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

Cómo hacer una copia de seguridad de una base de datos de SQL Server usando T-SQL

Puede usar T-SQL BACKUP DATABASE declaración para hacer una copia de seguridad de cualquier base de datos de SQL Server.

Este artículo le muestra cómo hacer una copia de seguridad de una base de datos en el disco. Esto crea un archivo .bak que se puede usar más tarde para restaurar la base de datos si es necesario.

Crear una copia de seguridad completa

Este es un ejemplo básico de cómo crear una copia de seguridad completa de una base de datos de SQL Server en el disco:

BACKUP DATABASE Movies  
TO DISK = 'Z:\mssql\backups\Movies.bak';

Este ejemplo crea una copia de seguridad completa de la base de datos de Películas en un archivo en el disco. Este ejemplo usa una ubicación en la unidad Z, pero la ruta puede ser la que desee. Se debe hacer una copia de seguridad de la base de datos en una unidad diferente a la utilizada para la propia base de datos. De esa manera, si hay una falla en el disco, no perderá su archivo de copia de seguridad junto con la base de datos.

El siguiente ejemplo hace lo mismo, pero este ejemplo usa la sintaxis de ruta de archivo de Linux y Mac:

BACKUP DATABASE Movies  
TO DISK = '/var/opt/mssql/backups/Movies.bak';

Crear una copia de seguridad diferencial

Una vez que haya creado una copia de seguridad completa, puede crear copias de seguridad diferenciales. Una copia de seguridad diferencial es aquella en la que solo se realizan copias de seguridad de las partes de la base de datos que han cambiado desde que se creó la última copia de seguridad completa de la base de datos.

Las copias de seguridad diferenciales reducen el tiempo que se tarda en hacer una copia de seguridad de la base de datos (debido al hecho de que solo se copian los cambios desde la última copia de seguridad completa).

Para crear una copia de seguridad diferencial, utilice la misma BACKUP DATABASE declaración que usa para crear la copia de seguridad completa, excepto que esta vez agregue el WITH DIFFERENTIAL cláusula.

He aquí un ejemplo:

BACKUP DATABASE Movies  
TO DISK = 'Z:\mssql\backups\Movies.bak'
WITH DIFFERENTIAL;

Al ejecutar esta declaración, se agregará la copia de seguridad diferencial al archivo de copia de seguridad original que contiene la copia de seguridad completa.

Copia de seguridad del registro de transacciones

También puede hacer una copia de seguridad del registro de transacciones. Esto se hace con el BACKUP LOG declaración.

He aquí un ejemplo:

BACKUP LOG Movies  
TO DISK = 'Z:\mssql\backups\Movies_log.bak';