Files
dtic-DIIAA/adn/tools/cli/dasuten_backup_origen.rb
T

32 lines
1.1 KiB
Ruby

require 'tiny_tds'
require 'time'
pass = ENV['PASS'] || begin
puts "Falta ENV['PASS'] (usar candados run utnlarioja.intranet:monlaricardo 'ruby adn/tools/cli/dasuten_backup_origen.rb')"
exit 1
end
host = ENV['SQL_HOST'] || '10.0.10.200'
user = ENV['SQL_USER'] || 'UTNlarioja\\monlaricardo'
begin
client = TinyTds::Client.new(
username: user,
password: pass,
host: host,
timeout: 600 # 10 minutos
)
puts "[+] Conectado exitosamente a SQL Server en #{host}"
backup_file = "E:\\BK_SQL\\sysdasuten_compressed_ADN.bak"
puts "[*] Iniciando BACKUP DATABASE de 'sysdasuten' hacia #{backup_file}..."
puts " (Esto puede tomar unos 10-30 segundos usando compresión, por favor espera...)"
start_time = Time.now
res = client.execute("BACKUP DATABASE sysdasuten TO DISK = '#{backup_file}' WITH INIT, COMPRESSION, STATS=10")
res.each { |r| puts r } # Consumir resultados para esperar a que termine
duration = Time.now - start_time
puts "[+] Backup completado exitosamente en #{duration.round(2)} segundos."
rescue => e
puts "[!] Error fatal: #{e.message}"
end