En esta entrada voy a mostrarte cómo podemos sacar un backup con SQL y darle un nombre dinámico al backup, empecemos!
-- Declarando las variables a utilizar
DECLARE @fechaHora NVARCHAR(20)
DECLARE @comando NVARCHAR(1000)
DECLARE @ruta NVARCHAR(200)
DECLARE @database NVARCHAR(50) = 'Alquiler'
-- Comenzamos a definir la ruta para almacenar el backup (esta será la parte fija)
SET @ruta = 'D:\Backup\'
-- Obtén la fecha y hora actual en formato YYYYMMDDHHMMSS (esta será la parte dinámica)
SET @fechaHora = FORMAT(GETDATE(), 'yyyyMMddHHmmss')
-- Construye el comando de backup con la ruta dinámica
SET @comando = 'BACKUP DATABASE '+ @database +' TO DISK = ''' + @ruta + 'Backup_' + @database +'_' + @fechaHora + '.bak'''
-- Ejecuta el comando
EXEC sp_executesql @comando --Esto crearía el archivo .bak con un nombre similar a Backup_Alquiler_20240101120000.bak
Este código lo podemos ejecutar directamente así:
Y nos va a estar generando backups:
También podemos meter esta consulta en un Job de SSMS y programarla como una tarea recurrente para tener siempre un backup de nuestras bases de datos 🙌✌️ como debe ser!
Si esta entrada te ha gustado, y así espero que sea, entonces compártela 👨💻
Créditos de la imagen de portada: Foto de Aleksandrs Karevs en Unsplash