sql >> Base de Datos >  >> RDS >> Sqlserver

SQL Server 2016:copia de seguridad de una base de datos

SQL Server proporciona una manera fácil de crear una copia de seguridad de una base de datos. Las copias de seguridad se pueden realizar con Transact-SQL, PowerShell o a través de la GUI de SQL Server Management Studio.

Aquí, demostraré cómo crear una copia de seguridad usando la GUI del sistema de administración de SQL Server, luego usando Transact-SQL y, finalmente, con SQL Server Powershell.

Crear una copia de seguridad a través de la GUI

  1. Inicie la base de datos de respaldo Cuadro de diálogo

    En el Explorador de objetos, haga clic con el botón derecho en la base de datos de la que desea realizar una copia de seguridad y seleccione Tareas> Copia de seguridad... del menú contextual.

  2. Revise la configuración de la copia de seguridad

    Este cuadro de diálogo le brinda la oportunidad de cambiar cualquiera de las configuraciones si es necesario.

    Para nuestro ejemplo, déjelo en la configuración predeterminada y haga clic en Aceptar para crear la copia de seguridad.

    Puede cambiar la base de datos aquí si accidentalmente seleccionó la incorrecta en el paso anterior.

  3. Copia de seguridad completa

    Recibirás un mensaje cuando se complete la copia de seguridad.

    Haga clic en Aceptar para cerrar el mensaje y el cuadro de diálogo.

    El archivo de copia de seguridad ahora se ubicará en la ubicación especificada.

Copia de seguridad de una base de datos usando Transact-SQL

  • Puede realizar la misma copia de seguridad anterior con SQL.

    Para hacer esto, abra una nueva ventana de consulta y ejecute un BACKUP declaración.

    El BACKUP La declaración acepta varias opciones (al igual que la opción GUI), pero también puede ejecutar una copia de seguridad simple con un mínimo de código.

    Código de muestra

    A continuación se muestra un ejemplo de una secuencia de comandos de copia de seguridad simple que especifica la base de datos de la que se realizará la copia de seguridad y la ubicación en la que se realizará la copia de seguridad.

    Después de ejecutar este código, el archivo de copia de seguridad se ubicará en la ubicación especificada.

    BACKUP DATABASE Music  
    TO DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup\Music.bak';

    Puede ver la sintaxis completa para BACKUP declaración en el sitio web de Microsoft.

Copia de seguridad de una base de datos usando PowerShell

SQL Server 2016 es compatible con Windows PowerShell, que es un shell de secuencias de comandos, que normalmente se usa para automatizar las tareas de administración e implementación.

El lenguaje de PowerShell admite una lógica más compleja que los scripts de Transact-SQL, lo que le permite crear scripts más sofisticados para sus copias de seguridad y otras tareas.

  1. Abrir PowerShell

    Haga clic derecho en la base de datos y seleccione Iniciar Powershell .

  2. Ejecute el comando de copia de seguridad

    Ingrese el comando para crear la copia de seguridad y presione Enter (o Volver , dependiendo de su teclado).

    La copia de seguridad se ejecutará inmediatamente.

    Código de muestra

    El siguiente código creará una copia de seguridad como en los ejemplos anteriores. Simplemente reemplace MyServer con el nombre de tu servidor.

    Después de ejecutar este código, el archivo de copia de seguridad se ubicará en la ubicación predeterminada.

    Backup-SqlDatabase -ServerInstance MyServer -Database Music

    También puede especificar una ubicación

    Backup-SqlDatabase -ServerInstance MyServer -Database Music -BackupFile 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup\Music.bak'

    También puede especificar -BackupAction Database para indicar explícitamente que se trata de una copia de seguridad completa. Sin embargo, esta es la opción predeterminada.

    Puede ver la documentación completa para Backup-SqlDatabase comando en el sitio web de Microsoft.

Sobrescritura de archivos de copia de seguridad

Si ejecutó todos los ejemplos anteriores exactamente como están, es posible que haya notado que cada vez que los ejecutó, el tamaño del archivo de copia de seguridad aumentó.

Esto se debe a que cada copia de seguridad sucesiva se agrega al archivo existente.

Está haciendo esto porque estamos usando el mismo nombre de archivo y no hemos especificado explícitamente que cada copia de seguridad deba sobrescribir cualquier archivo existente.

Hay una opción que le permite sobrescribir el archivo existente.

  • Uso de la GUI , haga clic en Opciones de medios en el menú de la izquierda de la Backup Database cuadro de diálogo y seleccione Sobrescribir todos los conjuntos de copia de seguridad existentes en Sobrescribir medios sección.
  • Uso de SQL añadir WITH INIT a la instrucción SQL.
  • Uso de Powershell , agregue -Initialize al comando.

Guardar archivos de copia de seguridad

Sin embargo, a menudo es una buena idea crear una copia de seguridad completa con un nombre de archivo único (que normalmente incluye la fecha en el nombre del archivo). Tener un nombre de archivo único significará que cada copia de seguridad será un archivo separado.

Además, según el tamaño de su base de datos y la cantidad de datos nuevos que se ingresan en ella, es posible que desee complementar sus copias de seguridad completas con copias de seguridad diferenciales. Una copia de seguridad diferencial captura solo los datos que han cambiado desde la copia de seguridad completa más reciente.