Copia de seguridad de un registro de transacciones

Se aplica a:SQL Server

En este artículo se describe cómo realizar una copia de seguridad de un registro de transacciones en SQL Server mediante SQL Server Management Studio, Azure Data Studio, Transact-SQL o PowerShell.

Limitaciones

La instrucción BACKUP no se permite en una transacción explícita o implícita. Una transacción explícita es aquella en que se define explícitamente el inicio y el final de la transacción.

No se admiten las copias de seguridad del registro de transacciones de la base de datos del sistema master.

Recomendaciones

Si una base de datos usa el modelo de recuperación optimizado para cargas masivas de registros o completo, debe hacer una copia de seguridad del registro de transacciones con suficiente regularidad para proteger los datos e impedir que el registro de transacciones se llene. De este modo se trunca el registro y se admite la restauración de la base de datos a un momento concreto.

De forma predeterminada, cada operación de copia de seguridad correcta agrega una entrada en el registro de errores de SQL Server y en el registro de eventos del sistema. Si se hace una copia de seguridad del registro con frecuencia, estos mensajes que indican la corrección de la operación pueden acumularse rápidamente, lo que da lugar a registros de errores muy grandes que pueden dificultar la búsqueda de otros mensajes. En esos casos, puede suprimir estas entradas de registro con la marca de seguimiento 3226, si ninguno de los scripts depende de esas entradas. Vea Marcas de seguimiento (Transact-SQL).

Permisos

De forma predeterminada, los permisos BACKUP DATABASE y BACKUP LOG necesarios se conceden a los miembros del rol fijo de servidor sysadmin y de los roles fijos de base de datos db_owner y db_backupoperator. Compruebe los permisos correctos antes de empezar.

Los problemas de propiedad y permisos del archivo físico del dispositivo de copia de seguridad pueden interferir con una operación de copia de seguridad. SQL Server debe poder leer y escribir en el dispositivo y la cuenta en la que se ejecuta el servicio SQL Server debe tener permisos de escritura. En cambio, sp_addumpdevice, que agrega una entrada para un dispositivo de copia de seguridad en las tablas del sistema, no comprueba los permisos de acceso a los archivos. Los problemas con los permisos del archivo físico del dispositivo de copia de seguridad no son evidentes para usted hasta que intente tener acceso al recurso físico al tratar de restaurar o realizar una copia de seguridad. Por tanto, una vez más, compruebe los permisos antes de empezar.

Use SQL Server Management Studio

Nota:

Los pasos de esta sección también se aplican a Azure Data Studio.

  1. Después de conectarse a la instancia adecuada del Motor de base de datos de SQL Server, en el Explorador de objetos, seleccione el nombre del servidor para expandir el árbol correspondiente.

  2. Expanda Bases de datos y, en función de la base de datos, seleccione la base de datos de un usuario o expanda Bases de datos del sistema y seleccione una base de datos del sistema.

  3. Haga clic con el botón secundario en la base de datos, seleccione Tareas y, a continuación, seleccione Hacer una copia de seguridad. Aparecerá el cuadro de diálogo Copia de seguridad de base de datos .

  4. En el cuadro de lista Base de datos , compruebe el nombre de la base de datos. También puede seleccionar otra base de datos en la lista.

  5. Compruebe que el modelo de recuperación sea FULL o BULK_LOGGED.

  6. En el cuadro de lista Tipo de copia de seguridad , seleccione Registro de transacciones.

  7. (Opcional) Seleccione Copia de seguridad de solo copia para crear una copia de seguridad de solo copia. 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, consulte Copias de seguridad de solo copia.

    Nota:

    Cuando la opción Diferencial está seleccionada, no puede crear una copia de seguridad de solo copia.

  8. Acepte el nombre del conjunto de copia de seguridad predeterminado sugerido en el cuadro de texto Nombre o especifique otro nombre.

  9. (Opcional) En el cuadro de texto Descripción, describa el conjunto de copia de seguridad.

  10. Especifique cuándo expirará el conjunto de copia de seguridad:

    • Para que el conjunto de copia de seguridad expire al cabo de un número de días específico, seleccione Después de (opción predeterminada) y escriba el número de días tras la creación del conjunto en que este expirará. Este valor puede estar entre 0 y 99999 días; el valor 0 significa que el conjunto de copia de seguridad no expira nunca.

      El valor predeterminado se establece en la opción Tiempo predeterminado de retención de medios de copia de seguridad (días) del cuadro de diálogo Propiedades del servidor (páginaConfiguración de base de datos ). Para tener acceso a este cuadro de diálogo, haga clic con el botón derecho en el nombre del servidor en el Explorador de objetos y seleccione Propiedades. Después, seleccione la página Configuración de base de datos .

    • Para que el conjunto de copia de seguridad expire en una determinada fecha, seleccione El y escriba la fecha en la que expirará.

  11. Elija el tipo de destino de la copia de seguridad seleccionando Disco, Dirección URL o Cinta. Para seleccionar las rutas de acceso de hasta 64 unidades de disco o cinta que contienen un solo conjunto de medios, seleccione Agregar. Las rutas seleccionadas se muestran en el cuadro de lista Copia de seguridad en .

    Para eliminar un destino de copia de seguridad, selecciónelo y elija Quitar. Para ver el contenido de un destino de copia de seguridad, selecciónelo y elija Contenido.

  12. Para ver o seleccionar las opciones avanzadas, seleccione Opciones, en el panel Seleccionar una página.

  13. Seleccione una opción de Sobrescribir medios; para ello, seleccione una de las opciones siguientes:

    • Hacer copia de seguridad en el conjunto de medios existente

      Para esta opción, seleccione Anexar al conjunto de copia de seguridad existente o Sobrescribir todos los conjuntos de copia de seguridad existentes. Vea Conjuntos de medios, familias de medios y conjuntos de copias de seguridad (SQL Server).

      • (Opcional) Seleccione Comprobar nombre de conjunto de medios y fecha de expiración del conjunto de copia de seguridad para que la operación de copia de seguridad compruebe la fecha y la hora en que expiran el conjunto de medios y el conjunto de copia de seguridad.

      • (Opcional) Escriba un nombre en el cuadro de texto Nombre del conjunto de medios. Si no se especifica ningún nombre, se crea un conjunto de medios con un nombre en blanco. Si especifica un nombre para el conjunto, los medios (cinta o disco) se comprueban para ver si el nombre real coincide con el nombre especificado aquí.

      Si deja el nombre del conjunto de medios en blanco y selecciona la casilla para comprobarlo con los medios, el resultado correcto significa que el nombre del conjunto en los medios también está en blanco.

    • Hacer copia de seguridad en un nuevo conjunto de medios y borrar todos los conjuntos de copia de seguridad existentes

      Para esta opción, especifique un nombre en el cuadro de texto Nuevo nombre del conjunto de medios y, si lo desea, describa el conjunto de medios en el cuadro de texto Nueva descripción del conjunto de medios. Vea Conjuntos de medios, familias de medios y conjuntos de copias de seguridad (SQL Server).

  14. Opcionalmente, en la sección Confiabilidad , seleccione:

  15. En la sección Registro de transacciones :

    • Para las copias de seguridad rutinarias del registro, conserve la selección predeterminada Truncar el registro de transacciones quitando las entradas inactivas.

    • Para hacer una copia de seguridad del final del registro (es decir, del registro activo), active Realizar copia de seguridad del final del registro y dejar la base de datos en estado de restauración.

      Una copia del final del registro se lleva a cabo cuando no se consigue realizar la copia de seguridad del final de registro para impedir la pérdida de trabajo. Realice una copia de seguridad del registro activo (copia del final del registro) después de un error, antes de comenzar la restauración de la base de datos o cuando se conmuta por error a una base de datos secundaria. Esta opción equivale a especificar la opción NORECOVERY en la instrucción BACKUP LOG de Transact-SQL.

      Para obtener más información sobre las copias del final del registro, vea Copias del final del registro (SQL Server).

  16. Si realiza copias de seguridad en una unidad de cinta (según se haya especificado en la sección Destino de la página General ), la opción Descargar la cinta después de realizar la copia de seguridad está activa. Al seleccionar esta opción se activa la opción Rebobinar la cinta antes de descargar.

  17. De forma predeterminada, el hecho de que se comprima una copia de seguridad depende del valor de la opción de configuración del servidor backup-compression default. Pero, independientemente del valor predeterminado actual de nivel de servidor, puede comprimir una copia de seguridad si activa Comprimir copia de seguridad e impedir la compresión si activa No comprimir copia de seguridad.

    La compresión de copia de seguridad es compatible con SQL Server 2008 (10.0.x) Enterprise y versiones posteriores, y SQL Server 2016 (13.x) Estándar con Service Pack 1 y versiones posteriores.

    Para ver la compresión de copia de seguridad actual predeterminada, vea Ver o establecer el valor predeterminado de compresión de copia de seguridad (opción de configuración del servidor).

    Para cifrar el archivo de copia de seguridad, active la casilla Cifrar copia de seguridad. Seleccione un algoritmo de cifrado que utilizar para cifrar el archivo de copia de seguridad y proporcione un certificado o clave asimétrica. Los algoritmos disponibles para el cifrado son:

    • AES 128
    • AES 192
    • AES 256
    • Triple DES

Uso de Transact-SQL

Ejecute la instrucción BACKUP LOG para realizar una copia de seguridad del registro de transacciones y especifique la siguiente información:

  • El nombre de la base de datos a la que pertenece el registro de transacciones del que se desea hacer una copia de seguridad.
  • El dispositivo de copia de seguridad en el que se va a escribir la copia de seguridad del registro de transacciones.

Importante

En este ejemplo se utiliza la base de datos AdventureWorks2022 , que utiliza el modelo de recuperación simple. Con el fin de permitir copias de seguridad de registros, antes de realizar una copia de seguridad completa de la base de datos, la base de datos se ha configurado para usar el modelo de recuperación completa.

Para obtener más información, consulte Ver o cambiar el modelo de recuperación de una base de datos (SQL Server).

En este ejemplo se crea una copia de seguridad del registro de transacciones de la base de datos AdventureWorks2022 en el dispositivo de copia de seguridad creado anteriormente, MyAdvWorks_FullRM_log1.

BACKUP LOG AdventureWorks2022
   TO MyAdvWorks_FullRM_log1;
GO

Usar PowerShell

Configure y use el Proveedor de SQL Server PowerShell. Use el cmdlet Backup-SqlDatabase y especifique Log como valor del parámetro -BackupAction .

En el ejemplo siguiente se crea una copia de seguridad de registro de la base de datos <myDatabase> en la ubicación de copia de seguridad predeterminada de la instancia de servidor Computer\Instance.

Backup-SqlDatabase -ServerInstance Computer\Instance -Database <myDatabase> -BackupAction Log