Copias de seguridad diferenciales (SQL Server)Differential Backups (SQL Server)

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

Este tema de copias de seguridad y restauración es pertinente para todas las bases de datos de SQL ServerSQL Server .This backup and restore topic is relevant for all SQL ServerSQL Server databases.

Una copia de seguridad diferencial se basa en la copia de seguridad de datos completa más reciente existente.A differential backup is based on the most recent, previous full data backup. Una copia de seguridad diferencial captura solo los datos que han cambiado después de la última copia de seguridad completa.A differential backup captures only the data that has changed since that full backup. La copia de seguridad completa en la que se basa una diferencial se denomina base de la diferencial.The full backup upon which a differential backup is based is known as the base of the differential. Las copias de seguridad completas, a excepción de las de solo copia, pueden servir como base para una serie de copias de seguridad diferenciales, incluidas las de base de datos, las parciales, y las de archivos.Full backups, except for copy-only backups, can serve as the base for a series of differential backups, including database backups, partial backups, and file backups. La copia de seguridad de base de una copia de seguridad diferencial de archivos puede estar contenida en una copia de seguridad completa, una copia de seguridad de archivos o una copia de seguridad parcial.The base backup for a file differential backup can be contained within a full backup, a file backup, or a partial backup.

VentajasBenefits

  • La creación de copias de seguridad diferencial puede ser muy rápida en comparación con la creación una copia de seguridad completa.Creating a differential backups can be very fast compared to creating a full backup. Una copia de seguridad diferencial registra solo los datos que han cambiado desde la última copia de seguridad completa en la que se basa la diferencial.A differential backup records only the data that has changed since the full backup upon the differential backup is based. Esto facilita la realización de copias de seguridad frecuentes, lo que reduce el riesgo de pérdida de datos.This facilitates taking frequent data backups, which decrease the risk of data loss. No obstante, antes de restaurar una copia de seguridad diferencial, debe restaurar su base.However, before you restore a differential backup, you must restore its base. Por lo tanto, la restauración de una copia de seguridad diferencial necesitará más pasos y tiempo que la restauración de una copia de seguridad completa porque se requieren dos archivos de copia de seguridad.Therefore restoring from a differential backup will necessarily take more steps and time than restoring from a full backup because two backup files are required.

  • Las copias de seguridad diferenciales de bases de datos son particularmente útiles si un subconjunto de una base de datos se modifica con más frecuencia que el resto de la base de datos.Differential database backups are especially useful if a subset of a database is modified more frequently than the rest of the database. En tales casos, las copias de seguridad diferenciales de bases de datos le permiten hacer una copia de seguridad con frecuencia sin la sobrecarga que generan las copias de seguridad completas de bases de datos.In these cases, differential database backups enable you back up frequently without the overhead of full database backups.

  • En el modelo de recuperación completa, las copias de seguridad diferenciales pueden reducir el número de copias de seguridad de registros que se deben restaurar.Under the full recovery model, using differential backups can reduce the number of log backups that you have to restore.

Información general de las copias de seguridad diferencialesOverview of Differential Backups

Una copia de seguridad diferencial captura el estado de las extensiones (colecciones de ocho páginas físicamente contiguas) que hayan cambiado entre el momento de creación de la base diferencial y el momento de creación de la copia de seguridad diferencial.A differential backup captures the state of any extents (collections of eight physically contiguous pages) that have changed between when the differential base was created and the when differential backup is created. Esto significa que el tamaño de una determinada copia de seguridad diferencial depende de la cantidad de datos que han cambiado desde la base.This means that the size of a given differential backup depends on the amount of data that has changed since the base. Como regla general, cuanto más antigua sea una base, mayor será una nueva copia de seguridad diferencial.Generally, the older a base is, the larger a new differential backup will be. En una serie de copias de seguridad diferenciales, es probable que una extensión actualizada con frecuencia contenga datos diferentes en cada una de las copias de seguridad diferenciales.In a series of differential backups, a frequently updated extent is likely to contain different data in each differential backup.

En la siguiente ilustración se muestra cómo funciona una copia de seguridad diferencial.The following illustration shows how a differential backup works. La ilustración muestra 24 extensiones de datos, 6 de las cuales han cambiado.The figure shows 24 data extents, 6 of which have changed. La copia de seguridad diferencial solo contiene estas 6 extensiones de datos.The differential backup contains only these 6 data extents. La operación de copia de seguridad diferencial se basa en una página de mapa de bits que contiene un bit por cada extensión.The differential backup operation relies on a bitmap page that contains a bit for every extent. Por cada extensión actualizada desde que se creó la base, el bit se establece en 1 en el mapa de bits.For each extent updated since the base, the bit is set to 1 in the bitmap.

El mapa de bits diferencial identifica extensiones modificadasDifferential bitmap identifies changed extents

Nota

El mapa de bits de la copia de seguridad diferencial no se actualiza con las copias de seguridad de solo copia.The differential bitmap is not updated by a copy-only backup. Por tanto, una copia de seguridad de solo copia no afecta a las copias de seguridad diferenciales subsiguientes.Therefore, a copy-only backup does not affect subsequent differential backups.

Una copia de seguridad diferencial que se realiza poco después de su base tiende a ser sustancialmente más pequeña que la base diferencial.A differential backup that is taken fairly soon after its base is usually significantly smaller than the differential base. Así, se gana espacio de copia de seguridad y tiempo.This saves storage space and backup time. Sin embargo, a medida que la base de datos cambia, la diferencia entre la base de datos y una base diferencial concreta aumenta.However, as a database changes over time, the difference between the database and a specific differential base increases. Cuanto más tiempo pasa entre una copia de seguridad diferencial y su base, más probabilidades hay de que la copia de seguridad diferencial sea más grande.The longer the time between a differential backup and its base, the larger the differential backup is likely to be. Esto significa que las copias de seguridad diferenciales pueden, a la larga, asemejarse en tamaño a la base diferencial.This means that the differential backups can eventually approach the differential base in size. La copia de seguridad diferencial grande pierde las ventajas de una copia de seguridad más rápida y de menor tamaño.A large differential backup loses the advantages of a faster and smaller backup.

A medida que se incrementa el tamaño de las copias de seguridad diferenciales, la restauración de una copia de seguridad diferencial puede incrementar sensiblemente el tiempo necesario para restaurar una base de datos.As the differential backups increase in size, restoring a differential backup can significantly increase the time that is required to restore a database. Por ello, recomendamos que realice una copia de seguridad completa a intervalos definidos para establecer una nueva base diferencial para los datos.Therefore, we recommend that you take a new full backup at set intervals to establish a new differential base for the data. Por ejemplo, cada semana podría realizar una copia de seguridad completa de toda la base de datos (es decir, una copia de seguridad completa de la base de datos) seguida de una serie de copias de seguridad diferenciales de la base de datos realizadas periódicamente durante la semana.For example, you might take a weekly full backup of the whole database (that is, a full database backup) followed by a regular series of differential database backups during the week.

En el momento de la restauración, antes de restaurar una copia de seguridad diferencial, debe restaurar su base.At restore time, before you restore a differential backup, you must restore its base. A continuación, solo necesita restaurar la copia diferencial más reciente para poner al día la base de datos hasta el momento en que se creó la copia de seguridad diferencial.Then, restore only the most recent differential backup to bring the database forward to the time when that differential backup was created. Por lo general, restaurará la copia de seguridad completa más reciente seguida de la copia de seguridad diferencial más reciente que está basada en la copia de seguridad completa.Typically, you would restore the most recent full backup followed by the most recent differential backup that is based on that full backup.

Copias de seguridad diferenciales de bases de datos con tablas con optimización para memoriaDifferential Backups of Databases with Memory-Optimized Tables

Para obtener información sobre las copias de seguridad diferenciales y las bases de datos optimizadas para memoria, vea Hacer copia de seguridad de una base de datos con tablas optimizadas para memoria.For information about differential backups and databases with memory-optimized tables, see Backing Up a Database with Memory-Optimized Tables.

Copias de seguridad diferencias de bases de datos de solo lecturaDifferential Backups of Read-Only Databases

En el caso de bases de datos de solo lectura, resulta más fácil gestionar las copias de seguridad completas por sí solas que cuando se utilizan junto copias de seguridad diferenciales.For read-only databases, full backups used alone are easier to manage than when they are used with differential backups. Cuando una base de datos es de solo lectura, las operaciones de copia de seguridad y de otro tipo no tienen capacidad para modificar los metadatos del archivo.When a database is read-only, backup and other operations cannot change the metadata that is contained in the file. Por lo tanto, los metadatos que precisan las copias de seguridad diferenciales, como el número de secuencia de registro en el que comienza la copia de seguridad diferencial (el número LSN base diferencial), se almacenan en la base de datos maestra .Therefore, metadata that is required by a differential backup, such as the log sequence number at which the differential backup begins (the differential base LSN) is stored in the master database. Si la base diferencial se establece cuando la base de datos es de solo lectura, el mapa de bits diferencial indicará más cambios de los que en realidad han ocurrido desde que se realizó la copia de seguridad de base.If the differential base is taken when the database is read-only, the differential bitmap indicates more changes than have actually occurred since the base backup. La copia de seguridad lee los datos adicionales, pero estos no se escriben en la misma, dado que el differential_base_lsn almacenado en la tabla del sistema backupset se usa para determinar si los datos realmente han cambiado desde que se creó la base.The extra data is read by backup, but is not written to the backup, because the differential_base_lsn stored in the backupset system table is used to determine whether the data has actually changed since the base.

Cuando se vuelve a generar, restaurar o separar y adjuntar una base de datos de solo lectura, se pierde la información de base diferencial.When a read-only database is rebuilt, restored, or detached and attached, the differential-base information is lost. Esto ocurre porque la base de datos maestra no está sincronizada con la base de datos de usuario.This occurs because the master database is not synchronized with the user database. Motor de base de datos de SQL ServerSQL Server Database Engine no puede detectar ni evitar este problema.The Motor de base de datos de SQL ServerSQL Server Database Engine cannot detect or prevent this problem. Las copias de seguridad diferenciales que se realicen con posterioridad no se basan en la copia de seguridad completa más reciente, por lo que pueden proporcionar resultados inesperados.Any later differential backups are not based on the most recent full backup and could provide unexpected results. Para establecer una nueva base diferencial se recomienda crear una copia de seguridad completa de base de datos.To establish a new differential base, we recommend that you create a full database backup.

Prácticas recomendadas para utilizar copias de seguridad diferenciales con una base de datos de solo lecturaBest Practices for Using Differential Backups with a Read-Only Database

Después de crear una copia de seguridad completa de una base de datos de solo lectura, deberá crear una copia de seguridad de la base de datos maestra si luego pretende crear una copia de seguridad diferencial.After you create a full database backup of a read-only database, if you intend to create a subsequent differential backup, back up the master database.

Si se pierde la base de datos maestra , restáurela antes de restaurar las copias de seguridad diferenciales de una base de datos de usuario.If the master database is lost, restore it before you restore any differential backup of a user database.

Si separa y adjunta una base de datos de solo lectura de la que tiene previsto realizar copias de seguridad diferenciales con posterioridad, realice tan pronto como sea posible una copia de seguridad completa de su base de datos de solo lectura y de la base de datos maestra .If you detach and attach a read-only database for which you plan to later use differential backups, as soon as it is practical, take a full database backup of both the read-only database and of the master database.

Tareas relacionadasRelated Tasks

Consulte tambiénSee Also

Información general de copia de seguridad (SQL Server) Backup Overview (SQL Server)
Copias de seguridad completas de bases de datos (SQL Server) Full Database Backups (SQL Server)
Restauraciones de base de datos completas (modelo de recuperación completa) Complete Database Restores (Full Recovery Model)
Restauraciones de base de datos completas (modelo de recuperación simple) Complete Database Restores (Simple Recovery Model)
Copias de seguridad de registros de transacciones (SQL Server)Transaction Log Backups (SQL Server)