#!/usr/bin/env ruby # frozen_string_literal: true require 'tiny_tds' require 'fileutils' puts "⏳ Iniciando proceso de backup en origen (srvv-fenix)..." begin client = TinyTds::Client.new( username: 'UTNlarioja\\monlaricardo', password: ENV['PASS'], host: '10.0.10.200', timeout: 300 # 5 minutos max ) puts "✅ Conectado a la instancia MSSQL: 10.0.10.200" backup_file = "E:\\BK_SQL\\sysdasuten_compressed_ADN.bak" query = <<~SQL BACKUP DATABASE [sysdasuten] TO DISK = N'#{backup_file}' WITH FORMAT, INIT, NAME = N'sysdasuten-Full Database Backup (ADN COMPRESSION)', SKIP, NOREWIND, NOUNLOAD, COMPRESSION, STATS = 10 SQL puts "⏳ Ejecutando BACKUP DATABASE con COMPRESSION..." result = client.execute(query) result.do puts "✅ Backup completado en origen: #{backup_file}" rescue => e puts "❌ Error crítico fallido: #{e.message}" exit 1 end