Copias de seguridad de solo copia

Se aplica a: SQL Server Azure SQL Managed Instance

Una copia de seguridad de solo copia es una copia de seguridad de SQL Server que es independiente de la secuencia de copias de seguridad de SQL Server convencionales. Normalmente, la realización de una copia de seguridad cambia la base de datos y afecta a la forma de restaurar las copias de seguridad posteriores. Sin embargo, a veces es útil realizar una copia de seguridad con un fin específico sin afectar a los procedimientos generales para copias de seguridad y restauración de la base de datos. Las copias de seguridad de solo copia sirven para este propósito.

Los tipos de copias de seguridad de solo copia son los siguientes:

  • Copias de seguridad completas de solo copia (todos los modelos de recuperación)

    • Una copia de seguridad de solo copia no puede servir como base diferencial ni copia de seguridad diferencial y no afecta a la base diferencial.

    • El proceso de restauración de una copia de seguridad completa de solo copia es el mismo que la restauración de cualquier otra copia de seguridad completa.

  • Copias de seguridad de registros de solo copia (solo modelo de recuperación completa y modelo de recuperación optimizado para cargas masivas de registros)

    • Una copia de seguridad de registros de solo copia mantiene el punto de archivo del registro existente y, por tanto, no afecta a la secuenciación de copias de seguridad de registros periódicas. Las copias de seguridad de registros de solo copia suelen ser innecesarias. En lugar de ello, puedes crear una nueva copia de seguridad de registros rutinaria (con WITH NORECOVERY) y utilizarla junto con las copias de seguridad de registros anteriores que sean necesarias para la secuencia de restauración. Sin embargo, una copia de seguridad de registros de solo copia en ocasiones puede resultar útil para realizar una restauración en línea. Para obtener más información, siga las instrucciones del artículo Ejemplo: Restauración en línea de un archivo de lectura y escritura (modelo de recuperación completa), con los archivos de copia de seguridad de solo copia en su lugar.

    • El registro de transacciones nunca se trunca después de una copia de seguridad de solo copia.

Las copias de seguridad de solo copia se registran en la columnais_copy_only de la tabla backupset.

Importante

En Azure SQL Managed Instance no se puede crear una copia de seguridad de solo copia de una base de datos cifrada con Cifrado de datos transparente (TDE) administrado por el servicio. El TDE administrado por el servicio usa la clave interna para el cifrado de datos, y esa clave no se puede exportar, por lo que no se puede restaurar la copia de seguridad en ningún otro lugar. Considere la posibilidad de usar TDE administrado por el cliente en su lugar para poder crear copias de seguridad de solo copia de bases de datos cifradas, pero asegúrese de que la clave de cifrado esté disponible para su posterior restauración.

Crear una copia de seguridad de solo copia

Puedes crear una copia de seguridad de solo copia mediante SQL Server Management Studio, Azure Data Studio, Transact-SQL o PowerShell.

A Uso de SQL Server Management Studio

En este ejemplo, una copia de seguridad de solo copia de la base de datos Sales se realiza en el disco en la ubicación de copias de seguridad predeterminada.

  1. En el Explorador de objetos, conéctese a una instancia del Motor de base de datos de SQL Server y expándala.

  2. Expanda Bases de datos, haga clic con el botón derecho en Sales, seleccione Tareasy, finalmente, Copia de seguridad...

  3. En la página General de la sección Origen, activa la casilla Copia de seguridad de solo copia .

  4. Seleccione Aceptar.

B. Uso de Transact-SQL

Este ejemplo crea una copia de seguridad de solo copia para la base de datos Sales utilizando el parámetro COPY_ONLY. También se realiza una copia de seguridad de solo copia del registro de transacciones.

BACKUP DATABASE Sales
TO DISK = 'E:\BAK\Sales_Copy.bak'
WITH COPY_ONLY;

BACKUP LOG Sales
TO DISK = 'E:\BAK\Sales_LogCopy.trn'
WITH COPY_ONLY;

Nota:

COPY_ONLY no tiene ningún efecto cuando se especifica con la opción DIFFERENTIAL.

C. Uso de Transact-SQL y Azure SQL Managed Instance

Azure SQL Managed Instance admite la realización de copias de seguridad completas COPY_ONLY. En el ejemplo se hace una copia de seguridad COPY_ONLY de MyDatabase en Microsoft Azure Blob Storage. El nombre de la cuenta de almacenamiento es mystorageaccount. El contenedor se denomina myfirstcontainer. Se ha creado una directiva de acceso de almacenamiento con derechos de lectura, escritura, eliminación y lista. La credencial de SQL Server, https://mystorageaccount.blob.core.windows.net/myfirstcontainer, se creó con una Firma de acceso compartido asociada al secreto de directiva de acceso de almacenamiento. Para obtener información sobre la copia de seguridad de SQL Server en Microsoft Azure Blob Storage, vea Copia de seguridad y restauración de SQL Server con Microsoft Azure Blob Storage y Copia de seguridad en URL de SQL Server.

-- Prerequisite to have write permissions
CREATE CREDENTIAL [https://mystorageaccount.blob.core.windows.net/myfirstcontainer]
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
SECRET = 'sp=...' -- Enter your secret SAS token here.

BACKUP DATABASE MyDatabase
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/MyDatabaseBackup.bak'
WITH STATS = 5, COPY_ONLY;

Para realizar una copia de seguridad de solo copia dividida en varias franjas, use este ejemplo:

BACKUP DATABASE MyDatabase
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/MyDatabase-01.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/MyDatabase-02.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/MyDatabase-03.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/MyDatabase-04.bak'
WITH COPY_ONLY;

D. Uso de PowerShell

Este ejemplo crea una copia de seguridad de solo copia para la base de datos Sales utilizando el parámetro -CopyOnly.

Backup-SqlDatabase -ServerInstance 'SalesServer' -Database 'Sales' -BackupFile 'E:\BAK\Sales_Copy.bak' -CopyOnly

Crear una copia de seguridad completa o de registros

Ver copias de seguridad de solo copia

Configuración y uso del proveedor de SQL Server PowerShell