Copias de seguridad de instantánea de archivos para archivos de base de datos de AzureFile-Snapshot Backups for Database Files in Azure

SE APLICA A: síSQL Server noAzure SQL Database noAzure Synapse Analytics (SQL DW) noAlmacenamiento de datos paralelos APPLIES TO: yesSQL Server noAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

SQL ServerSQL Server La copia de seguridad de instantánea de archivos usa las instantáneas de Azure para proporcionar copias de seguridad prácticamente instantáneas y restauraciones más rápidas de los archivos de base de datos almacenados mediante el servicio de almacenamiento de blobs de Azure.File-snapshot backup uses Azure snapshots to provide nearly instantaneous backups and quicker restores for database files stored using the Azure Blob storage service. Esta función permite simplificar las directivas de copia de seguridad y restauración.This capability enables you to simplify your backup and restore policies. Para obtener una demostración en vivo, consulte Demo of Point in Time Restore(Demostración de restauración a un momento dado).For a live demo, see Demo of Point in Time Restore. Para obtener más información sobre cómo almacenar los archivos de base de datos mediante el servicio de almacenamiento de blobs de Azure, vea Archivos de datos de SQL Server en Microsoft Azure.For more information on storing database files using the Azure Blob storage service, see SQL Server Data Files in Microsoft Azure.

diagrama de arquitectura de copia de seguridad de instantáneasnapshot backup architectural diagram

DescargarDownload

  • Para descargar SQL Server 2016 (13.x)SQL Server 2016 (13.x), vaya al Centro de evaluación .To download SQL Server 2016 (13.x)SQL Server 2016 (13.x), go to Evaluation Center.

  • ¿Tiene una cuenta de Azure?Have an Azure account? Si es así, haga clic aquí para poner en marcha una máquina virtual con SQL ServerSQL Server ya instalado.Then go Here to spin up a Virtual Machine with SQL ServerSQL Server already installed.

Uso de instantáneas de Azure para hacer copias de seguridad de los archivos de base de datos almacenados en AzureUsing Azure snapshots to back up database files stored in Azure

¿Qué es una copia de seguridad de instantánea de archivos de SQL ServerSQL Server ?What is a SQL ServerSQL Server file-snapshot backup

Una copia de seguridad de instantánea de archivos se compone de un conjunto de instantáneas de Azure de los blobs que contienen los archivos de base de datos, más un archivo de copia de seguridad que incluye punteros a esas instantáneas de archivos.A file-snapshot backup consists of a set of Azure snapshots of the blobs containing the database files plus a backup file containing pointers to these file-snapshots. Cada instantánea de archivos se almacena en el contenedor junto con el blob base.Each file-snapshot is stored in the container with the base blob. Se puede especificar que el archivo de copia de seguridad se escriba en una dirección URL, un disco o una cinta.You can specify that the backup file itself to be written to URL, disk or tape. La opción recomendada es la de dirección URL.Backup to URL is recommended. Consulte BACKUP (Transact-SQL) para obtener más información sobre copias de seguridad y Copia de seguridad en URL de SQL Server para copias de seguridad en la dirección URL.For more information on backing up, see BACKUP (Transact-SQL) and on backing up to URL, see SQL Server Backup to URL.

arquitectura de la característica de instantáneaarchitecture of snapshot feature

Si se elimina el blob de base, se invalidará el conjunto de copia de seguridad y no se podrán anular los blobs que contengan instantáneas de archivos (a menos que especifique expresamente que se anule el blob con todas sus instantáneas de archivo).Deleting the base blob will invalidate the backup set and you are prevented from dropping a blob that contains file-snapshots (unless you expressly choose to delete a blob with all of its file-snapshots). Por otro lado, anular una base de datos o un archivo de datos no elimina el blob de base ni ninguno de sus archivos de instantáneas.Furthermore, dropping a database or a data file does not delete the base blob or any of its file-snapshots. Además, aunque se elimine el archivo de copia de seguridad, no se elimina ninguna de las instantáneas de archivos del conjunto de copia de seguridad.Also, deleting the backup file does not delete any of the file-snapshots in the backup set. Para eliminar un conjunto de copia de seguridad de instantánea de archivos, use el procedimiento almacenado del sistema sys.sp_delete_backup .To delete a file-snapshot backup set, use the sys.sp_delete_backup system stored procedure.

Copia de seguridad de bases de datos completa: si se usa una copia de seguridad de instantánea de archivos para realizar una copia de seguridad completa de las bases de datos, se crea una instantánea de Azure de todos los archivos de datos y de registro que incluye la base de datos, se establece la cadena de copia de seguridad del registro de transacciones y se escribe la ubicación de las instantáneas de archivos en el archivo de copia de seguridad.Full database backup: Performing a full database backup using file-snapshot backup creates an Azure snapshot of each data and log file comprising the database, establishes the transaction log backup chain, and writes the location of the file-snapshots into the backup file.

Copia de seguridad del registro de transacciones: si se usa una copia de seguridad de instantánea de archivos para realizar una copia de seguridad del registro de transacciones, se crea una instantánea de archivos de cada archivo de base de datos (no solo el registro de transacciones), se registra la información de ubicación de la instantánea de archivos en el archivo de copia de seguridad y se trunca el archivo del registro de transacciones.Transaction log backup: Performing a transaction log backup using file-snapshot backup creates a file-snapshot of each database file (not just the transaction log), records the file-snapshot location information into the backup file, and truncates the transaction log file.

Importante

Tras la primera copia de seguridad completa que se requiere para establecer la cadena de copia de seguridad del registro de transacciones (que puede ser una copia de seguridad de instantánea de archivos), solo será necesario realizar copias de seguridad del registro de transacciones. Esto se debe a que cada conjunto de copia de seguridad de instantánea de archivos del registro de transacciones contiene instantáneas de todos los archivos de base de datos y se puede usar para realizar una restauración de base de datos o una restauración del registro.After the initial full backup that is required to establish the transaction log backup chain (which can be a file-snapshot backup), you only need to perform transaction log backups because each transaction log file-snapshot backup set contains file-snapshots of all database files and can be used to perform a database restore or a log restore. Después de la primera copia de seguridad de base de datos completa, no será necesario realizar más copias de seguridad completas o diferenciales porque el servicio de almacenamiento de blobs de Azure se encarga de controlar las diferencias entre las instantáneas de archivos y el estado actual del blob de base para cada archivo de base de datos.After the initial full database backup, you do not need additional full or differential backups because the Azure Blob storage service handles the differences between each file-snapshot and the current state of the base blob for each database file.

Nota

Para obtener un tutorial sobre el uso de SQL Server 2016 con el servicio Microsoft Azure Blob Storage, vea Tutorial: Uso del servicio Microsoft Azure Blob Storage con bases de datos de SQL Server 2016For a tutorial on using SQL Server 2016 with the Microsoft Azure Blob storage service, see Tutorial: Using the Microsoft Azure Blob storage service with SQL Server 2016 databases

Restauración con copias de seguridad de instantánea de archivosRestore using file-snapshot backups

Dado que cada conjunto de copia de seguridad de instantánea de archivos contiene una instantánea de cada archivo de base de datos, el proceso de restauración requiere a lo sumo dos conjuntos adyacentes de copias de seguridad de instantánea de archivos.Because each file-snapshot backup set contains a file-snapshot of each database file, a restore process requires at most adjacent two file-snapshot backup sets. Esto es cierto independientemente de si el conjunto de copia de seguridad corresponde a una copia de seguridad de la base de datos completa o a una copia de seguridad del registro.This is true regardless of whether the backup set is from a full database backup or a log backup. Esto es muy diferente al proceso de restauración en el que se usan archivos de copia de seguridad de secuencias tradicional.This is very different than the restore process when using traditional streaming backup files to perform the restore process. Con la copia de seguridad de secuencias tradicional, el proceso de restauración exige usar una cadena completa de conjuntos de copia de seguridad: la copia de seguridad completa, una copia de seguridad diferencial y una o varias copias del registro de transacciones.With traditional streaming backup, the restore process requires the use of an entire chain of backup sets: the full backup, a differential backup and one or more transaction log backups. La parte de la recuperación del proceso de restauración sigue siendo la misma con independencia de si la restauración usa una copia de seguridad de instantánea de archivos o un conjunto de copia de seguridad de secuencias.The recovery portion of the restore process remains the same regardless of whether the restore is using a file-snapshot backup or a streaming backup set.

A la hora de un conjunto de copia de seguridad: para realizar una operación RESTORE DATABASE que restaure una base de datos a la hora de un determinado conjunto de copia de seguridad de instantánea de archivos, tan solo es necesario el conjunto de copia de seguridad específico, más los blobs de base.To the time of any backup set: In order to perform a RESTORE DATABASE operation to restore a database to the time of a specific file-snapshot backup set, only the specific backup set is required, plus the base blobs themselves. Dado que para realizar una operación RESTORE DATABASE puede usar un conjunto de copia de seguridad de instantánea de archivos del registro de transacciones, lo normal es utilizar un conjunto de copia de seguridad del registro de transacciones para llevar a cabo este tipo de operación RESTORE DATABASE. En raras ocasiones usará un conjunto de copia de seguridad de base de datos completa.Because you can use a transaction log file-snapshot backup set to perform a RESTORE DATABASE operation, you will typically use a transaction log backup set to perform this type of RESTORE DATABASE operation and rarely use a full database backup set. Al final de este tema se incluye un ejemplo en el que se demuestra esta técnica.An example appears at the end of this topic demonstrating this technique.

A un punto en el tiempo entre dos conjuntos de copia de seguridad de instantánea de archivos: para realizar una operación RESTORE DATABASE que restaure una base de datos a un momento específico en el tiempo entre la hora de dos conjuntos adyacentes de copia de seguridad del registro de transacciones, solo se requieren dos conjuntos: uno antes y otro después del punto en el tiempo al que se quiere restaurar la base de datos.To a point in time between two file-snapshot backup sets: In order to perform a RESTORE DATABASE operation to restore a database to a specific point in time between the time of two adjacent transaction log backup sets, only two transaction log backup sets are required (one before and one after the point in time to which you wish to restore the database). Para lograrlo, se realizan las siguientes operaciones: una operación RESTORE DATABASE WITH NORECOVERY con el conjunto de copia de seguridad de instantánea de archivos del registro de transacciones del punto en el tiempo anterior; y una operación RESTORE LOG WITH RECOVERY con el conjunto de copia de seguridad de instantánea de archivos del registro de transacciones del punto en el tiempo posterior y usando un argumento STOPAT para especificar el punto en el tiempo en el que se detendrá la recuperación de la copia de seguridad del registro de transacciones.To accomplish this, you would perform a RESTORE DATABASE operation WITH NORECOVERY using the transactional log file-snapshot backup set from the earlier point in time and perform a RESTORE LOG operation WITH RECOVERY using the transaction log file-snapshot backup set from the later point in time and using the STOPAT argument to specify the point in time at which to stop the recovery from the transaction log backup. Al final de este tema se incluye un ejemplo en el que se demuestra esta técnica.An example appears at the end of this topic demonstrating this technique. Para obtener una demostración en vivo, consulte Demo of Point in Time Restore(Demostración de restauración a un momento dado).For a live demo, see Demo of Point in Time Restore.

Mantenimiento de conjuntos de copia de seguridad de archivosFile-backup set maintenance

Eliminar un conjunto de copia de seguridad de instantánea de archivos: no se permite usar el argumento FORMAT para sobrescribir un conjunto de copia de seguridad de instantánea de archivos.Deleting a file-snapshot backup set: You cannot overwrite a file-snapshot backup set using the FORMAT argument. El motivo es evitar que queden huérfanas las instantáneas de archivos creadas con la copia de seguridad de instantánea de archivos original.The FORMAT argument is not permitted to avoid leaving orphaned file-snapshots that were created with the original file-snapshot backup. Para eliminar un conjunto de copia de seguridad de instantánea de archivos, use el procedimiento almacenado del sistema sys.sp_delete_backup .To delete a file-snapshot backup set, use the sys.sp_delete_backup system stored procedure. Este procedimiento almacenado elimina el archivo de copia de seguridad y las instantáneas de archivos que componen el conjunto de copia de seguridad.This stored procedure deletes the backup file and the file-snapshots that comprise the backup set. Cualquier otro método para eliminar un conjunto de copia de seguridad de instantánea de archivos puede eliminar el archivo de copia de seguridad sin eliminar las instantáneas de archivos del conjunto de copia de seguridad.Using another method to delete a file-snapshot backup set may delete the backup file without deleting the file-snapshots in the backup set.

Eliminar instantáneas de archivos de copia de seguridad huérfanas: es posible que haya instantáneas de archivos huérfanas si se elimina el archivo de copia de seguridad sin usar el procedimiento almacenado del sistema sys.sp_delete_backup o si se anula una base de datos o un archivo de base de datos mientras los blobs que contienen la base de datos o el archivo de base de datos tienen instantáneas de archivos de copia de seguridad asociadas a ellos.Deleting orphaned backup file-snapshots: You may have orphaned file-snapshots if the backup file was deleted without using the sys.sp_delete_backup system stored procedure or if a database or database file was dropped while the blob(s) containing the database or database file had backup file-snapshots associated with them. Para identificar las instantáneas de archivos que puedan estar huérfanas, use la función del sistema sys.fn_db_backup_file_snapshots para hacer una lista con todas las instantáneas de los archivos de la base de datos.To identify file-snapshots that may be orphaned, use the sys.fn_db_backup_file_snapshots system function to list all file-snapshots of the database files. Para identificar las instantáneas de archivos que forman parte de un determinado conjunto de copia de seguridad de instantánea de archivos, use el procedimiento almacenado del sistema RESTORE FILELISTONLY.To identify the file-snapshots that are part of a specific file-snapshot backup set, use the RESTORE FILELISTONLY system stored procedure. Después, puede usar el procedimiento almacenado del sistema sys.sp_delete_backup_file_snapshot para eliminar una instantánea de archivos de copia de seguridad que se haya quedado huérfana.You can then use the sys.sp_delete_backup_file_snapshot system stored procedure to delete an individual backup file-snapshot that was orphaned. Al final de este tema podrá consultar ejemplos en los que se usan esta función de sistema y estos procedimientos almacenados del sistema.Examples using this system function and these system stored procedures are at the end of this topic. Para obtener más información, vea sp_delete_backup (Transact-SQL), sys.fn_db_backup_file_snapshots (Transact-SQL), sp_delete_backup_file_snapshot (Transact-SQL) y RESTORE FILELISTONLY (Transact-SQL).For more information, see sp_delete_backup (Transact-SQL), sys.fn_db_backup_file_snapshots (Transact-SQL), sp_delete_backup_file_snapshot (Transact-SQL), and RESTORE FILELISTONLY (Transact-SQL).

Consideraciones y limitacionesConsiderations and Limitations

Premium Storage: las siguientes limitaciones se aplican al usar Premium Storage.Premium storage: When using premium storage, the following limitations apply:

Cuenta de almacenamiento única: la instantánea de archivos y los blobs de destino deben usar la misma cuenta de almacenamiento.Single storage account: The file-snapshot and destination blobs must use the same storage account.

Modelo de recuperación masiva: cuando se usa un modelo de recuperación optimizado para cargas masivas de registros y se trabaja con una copia de seguridad del registro de transacciones que contiene transacciones registradas al mínimo, no se puede hacer una restauración del registro (incluida una recuperación a un momento dado) mediante la copia de seguridad del registro de transacciones.Bulk recovery model: When using bulk-logged recovery mode and working with a transaction log backup containing minimally logged transactions, you cannot do a log restore (including point in time recovery) using the transaction log backup. En su lugar, realice una restauración de base de datos al momento del conjunto de copia de seguridad de instantánea de archivos.Rather, you perform a database restore to time of the file-snapshot backup set. Esta limitación es idéntica a la limitación de la copia de seguridad de secuencias.This limitation is identical to the limitation with streaming backup.

Restauración con conexión: al utilizar las copias de seguridad de instantánea, no se pueden realizar restauraciones con conexión.Online Restore: When using file-snapshot backups, you cannot perform an Online Restore. Para obtener más información sobre la restauración con conexión, vea Restauración con conexión (SQL Server).For more information about Online Restore, see Online Restore (SQL Server).

Facturación: el uso de la copia de seguridad de instantánea de archivos de SQL Server conlleva cargos adicionales con el cambio de datos.Billing: When using SQL Server file-snapshot backup, additional charges will be incurred as data changes. Para obtener más información, vea Introducción a cómo las instantáneas pueden incrementar los costos.For more information, see Understanding How Snapshots Accrue Charges.

Archivado: si quiere archivar una copia de seguridad de instantánea de archivos, puede hacerlo en almacenamiento de blobs o en copia de seguridad de secuencias.Archival: If you wish to archive a file-snapshot backup, you can archive to blob storage or to streaming backup. Para archivar en el almacenamiento de blobs, copie las instantáneas del conjunto de copia de seguridad de instantánea de archivos en blobs diferentes.To archive to blob storage, copy the snapshots in the file-snapshot backup set into separate blobs. Para archivar en una copia de seguridad de secuencias, restaure la copia de seguridad de instantánea de archivos como una base de datos nueva y luego realice una copia de seguridad de secuencias normal con compresión y/o cifrado y archívela durante el tiempo que desee, independientemente de los blobs de base.To archive to streaming backup, restore the file-snapshot backup as a new database and then perform a normal streaming backup with compression and/or encryption and archive it for as long as desired, independent of the base blobs.

Importante

El mantenimiento de varias copias de seguridad de instantáneas de archivos solo supone una pequeña sobrecarga en el rendimiento.Maintaining multiple file-snapshot backups has only a small performance overhead. Sin embargo, un número excesivo de copias de seguridad de instantáneas de archivos puede afectar al rendimiento de E/S en la base de datos.However, maintaining an excessive number of file-snapshot backups can have an I/O performance impact on the database. Le recomendamos que únicamente mantenga las copias de seguridad de instantáneas de archivos que sean necesarias para su objetivo de punto de recuperación.We recommend you maintain only those file-snapshot backups necessary to support your recovery point objective.

Copia de seguridad de la base de datos y el registro mediante una copia de seguridad de instantánea de archivosBacking up the database and log using a file-snapshot backup

En el ejemplo siguiente se usa la copia de seguridad de instantánea de archivos para realizar una copia de seguridad de la base de datos de ejemplo AdventureWorks2016 en una dirección URL.The example below uses file-snapshot backup to back up the AdventureWorks2016 sample database to URL.

-- To permit log backups, before the full database backup, modify the database   
-- to use the full recovery model.  
USE master;  
GO  
ALTER DATABASE AdventureWorks2016  
   SET RECOVERY FULL;  
GO  
-- Back up the full AdventureWorks2016 database.  
BACKUP DATABASE AdventureWorks2016   
TO URL = 'https://<mystorageaccountname>.blob.core.windows.net/<mycontainername>/AdventureWorks2016.bak'   
WITH FILE_SNAPSHOT;  
GO  
-- Back up the AdventureWorks2016 log using a time stamp in the backup file name.  
DECLARE @Log_Filename AS VARCHAR (300);  
SET @Log_Filename = 'https://<mystorageaccountname>.blob.core.windows.net/<mycontainername>/AdventureWorks2016_Log_'+   
REPLACE (REPLACE (REPLACE (CONVERT (VARCHAR (40), GETDATE (), 120), '-','_'),':', '_'),' ', '_') + '.trn';  
BACKUP LOG AdventureWorks2016  
 TO URL = @Log_Filename WITH FILE_SNAPSHOT;  
GO  

Restauración a partir de una copia de seguridad de instantánea de archivos de SQL ServerSQL ServerRestoring from a SQL ServerSQL Server file-snapshot backup

En el ejemplo siguiente, se restaura la base de datos AdventureWorks2016 mediante un conjunto de copia de seguridad de instantánea de archivos del registro de transacciones y se muestra una operación de recuperación.The following example restores the AdventureWorks2016 database using a transaction log file-snapshot backup set, and shows a recovery operation. Observe que puede restaurar una base de datos a partir de un único conjunto de copia de seguridad de instantánea de archivos del registro de transacciones.Notice that you can restore a database from a single transactional log file-snapshot backup set.

RESTORE DATABASE AdventureWorks2016 FROM URL = 'https://<mystorageaccountname>.blob.core.windows.net/<mycontainername>/AdventureWorks2016_2015_05_18_16_00_00.trn'   
WITH RECOVERY, REPLACE;  
GO  

Restauración a partir de una copia de seguridad de instantánea de archivos de SQL ServerSQL Server a un momento dadoRestoring from a SQL ServerSQL Server file-snapshot backup to a point in time

En el ejemplo siguiente se restaura la base de datos AdventureWorks2016 a su estado en un momento en el tiempo. Para ello, se usan dos conjuntos de copia de seguridad de instantánea de archivos del registro de transacciones y se muestra una operación de recuperación.The following example restores the AdventureWorks2016 to its state at a specified point in time using two transaction log file-snapshot backup sets, and shows a recovery operation.

RESTORE DATABASE AdventureWorks2016 FROM URL = 'https://<mystorageaccountname>.blob.core.windows.net/<mycontainername>/AdventureWorks2016_2015_05_18_16_00_00.trn'   
WITH NORECOVERY,REPLACE;  
GO   
  
RESTORE LOG AdventureWorks2016 FROM URL = 'https://<mystorageaccountname>.blob.core.windows.net/<mycontainername>/AdventureWorks2016_2015_05_18_18_00_00.trn'   
WITH RECOVERY,STOPAT = 'May 18, 2015 5:35 PM';  
GO  

Eliminación de un conjunto de copia de seguridad de instantánea de archivos de base de datosDeleting a database file-snapshot backup set

Para eliminar un conjunto de copia de seguridad de instantánea de archivos, use el procedimiento almacenado del sistema sys.sp_delete_backup .To delete a file-snapshot backup set, use the sys.sp_delete_backup system stored procedure. Especifique el nombre de la base de datos para que el sistema compruebe que el conjunto de copia de seguridad de instantánea de archivos especificado es efectivamente una copia de seguridad de la base de datos especificada.Specify the database name to have the system verify that the specified file-snapshot backup set is a indeed a backup for the database specified. Si no se especifica ningún nombre de base de datos, se eliminará el conjunto de copia de seguridad especificado con sus instantáneas de archivos sin realizar esa validación.If no database name is specified, the specified backup set with its file-snapshots will be deleted without such a validation. Para obtener más información, vea sp_delete_backup (Transact-SQL).For more information, see sp_delete_backup (Transact-SQL).

Advertencia

Si se usa otro método (como el Portal de administración de Microsoft Azure o el visor de Almacenamiento de Azure en SQL Server Management Studio) para intentar eliminar un conjunto de copia de seguridad de instantánea de archivos, las instantáneas de archivos del conjunto de copia de seguridad no se eliminarán.Attempting to delete a file-snapshot backup set using another method, such as the Microsoft Azure Management Portal or the Azure Storage viewer in SQL Server Management Studio will not delete the file-snapshots in the backup set. Estas herramientas solo eliminarán el archivo de copia de seguridad que contiene los punteros a las instantáneas de archivos del conjunto de copia de seguridad de instantánea de archivos.These tools will only delete the backup file itself that contains the pointers to the file-snapshots in the file-snapshot backup set. Para identificar las instantáneas de archivo de copia de seguridad que permanecen después de que un archivo de copia de seguridad se haya eliminado de forma incorrecta, use la función del sistema sys.fn_db_backup_file_snapshots y, después, use el procedimiento almacenado del sistema sys.sp_delete_backup_file_snapshot para eliminar una instantánea de archivo de copia de seguridad individual.To identify backup file-snapshots that remain after a backup file was improperly deleted, use the sys.fn_db_backup_file_snapshots system function and then use the sys.sp_delete_backup_file_snapshot system stored procedure to delete an individual backup file-snapshot.

En el ejemplo siguiente se elimina el conjunto de copia de seguridad de instantánea de archivos especificado, incluidos el archivo de copia de seguridad y las instantáneas de archivos que incluyen el conjunto de copia de seguridad especificado.The following example deletes the specified file-snapshot backup set, including the backup file and the file-snapshots comprising the specified backup set.

sys.sp_delete_backup 'https://<mystorageaccountname>.blob.core.windows.net/<mycontainername>/AdventureWorks2016.bak', 'adventureworks2016' ;  
GO  
  

Visualización de instantáneas de archivos de copia de seguridad de base de datosViewing database backup file-snapshots

Para ver instantáneas de archivos del blob de base para cada archivo de base de datos, use la función del sistema sys.fn_db_backup_file_snapshots .To view file-snapshots of the base blob for each database file, use the sys.fn_db_backup_file_snapshots system function. Esta función del sistema permite ver todas las instantáneas de archivos de copia de seguridad de cada blob de base para una base de datos almacenada con el servicio de almacenamiento de blobs de Azure.This system function enables you to view all backup file-snapshots of each base blob for a database stored using the Azure Blob storage service. Un ejemplo de uso principal de esta función es identificar las instantáneas de archivo de copia de seguridad de una base de datos que se mantienen cuando se elimina el archivo de copia de seguridad de un conjunto de copia de seguridad de instantánea de archivo mediante un mecanismo distinto del procedimiento almacenado del sistema sys.sp_delete_backup .A primary use case for this function is to identify backup file-snapshots of a database that remain when the backup file for a file-snapshot backup set is deleted using a mechanism other than the sys.sp_delete_backup system stored procedure. Para determinar las instantáneas de archivo de copia de seguridad que forman parte de los conjuntos de copia de seguridad intactos y aquellas que no forman parte de esos conjuntos intactos, use el procedimiento almacenado del sistema RESTORE FILELISTONLY para enumerar las instantáneas de archivo que pertenecen a cada archivo de copia de seguridad.To determine the backup file-snapshots that are part of intact backup sets and the ones that are not part of intact backup sets, use the RESTORE FILELISTONLY system stored procedure to list the file-snapshots belonging to each backup file. Para obtener más información, vea sys.fn_db_backup_file_snapshots (Transact-SQL) y RESTORE FILELISTONLY (Transact-SQL).For more information, see sys.fn_db_backup_file_snapshots (Transact-SQL) and RESTORE FILELISTONLY (Transact-SQL).

En el ejemplo siguiente se devuelve la lista de todas las instantáneas de archivos de copia de seguridad correspondientes a la base de datos especificada.The following example returns the list of all backup file-snapshots for the specified database.

--Either specify the database name or set the database context  
USE AdventureWorks2016  
select * from sys.fn_db_backup_file_snapshots (null) ;  
GO  
select * from sys.fn_db_backup_file_snapshots ('AdventureWorks2016') ;  
GO  
  

Eliminación de una única instantánea de archivos de copia de seguridad de base de datosDeleting an individual database backup file-snapshot

Para eliminar una instantánea de archivo de copia de seguridad de un blob de base de datos, use el procedimiento almacenado del sistema sys.sp_delete_backup_file_snapshot .To delete an individual backup file-snapshot of a database base blob, use the sys.sp_delete_backup_file_snapshot system stored procedure. Un ejemplo de uso principal de este procedimiento almacenado del sistema es eliminar los archivos de instantánea de archivo huérfanos que permanecen después de que se haya eliminado un archivo de copia de seguridad usando un método distinto del procedimiento almacenado del sistema sys.sp_delete_backup.A primary use case for this system stored procedure is to delete orphaned file-snapshot files that remain after a backup file was deleted using a method other than the sys.sp_delete_backup system stored procedure. Para obtener más información, vea sp_delete_backup_file_snapshot (Transact-SQL).For more information, see sp_delete_backup_file_snapshot (Transact-SQL).

Advertencia

La eliminación de una instantánea de archivos individual que forma parte de un conjunto de copia de seguridad de instantánea de archivos invalidará el conjunto de copia de seguridad.Deleting an individual file-snapshot that is part of a file-snapshot backup set will invalidate the backup set.

En el ejemplo siguiente se elimina la instantánea de archivos de copia de seguridad especificada.The following example deletes the specified backup file-snapshot. La dirección URL de la copia de seguridad especificada se obtuvo mediante la función del sistema sys.fn_db_backup_file_snapshots .The URL for the specified backup was obtained using the sys.fn_db_backup_file_snapshots system function.

sys.sp_delete_backup_file_snapshot N'adventureworks2016', N'https://<mystorageaccountname>.blob.core.windows.net/<mycontainername>/AdventureWorks2016Data.mdf?snapshot=2015-05-29T21:31:31.6502195Z';  
GO  

Consulte tambiénSee Also

Tutorial: Uso del servicio Microsoft Azure Blob Storage con bases de datos de SQL Server 2016Tutorial: Using the Microsoft Azure Blob storage service with SQL Server 2016 databases