Configuración del trasvase de registros para SQL Server en máquinas virtuales de Azure

Se aplica a:SQL Server en VM de Azure

En este artículo se enseña a configurar el trasvase de registros entre dos instancias de SQL Server en máquinas virtuales de Azure (VM).

Información general

El trasvase de registros permite enviar automáticamente copias de seguridad del registro de transacciones desde una base de datos principal del servidor principal a una o varias bases de datos secundarias del servidor secundario. Las copias de seguridad del registro de transacciones se aplican a cada una de las bases de datos secundarias de forma individual. En un tercer servidor opcional, denominado servidor de supervisión, se registra el historial y el estado de las operaciones de copias de seguridad y restauración y, opcionalmente, se activan alertas si estas operaciones no se producen según lo programado.

El trasvase de registros se usa principalmente como solución de recuperación ante desastres y se puede combinar con otras opciones de alta disponibilidad y recuperación ante desastres, incluidos los Grupos de disponibilidad Always On.

Requisitos previos

Para configurar el trasvase de registros para SQL Server en máquinas virtuales de Azure, debe tener los siguientes requisitos previos:

  • Al menos dos máquinas virtuales de Azure unidas a un dominio con SQL Server en el mismo grupo de recursos que una cuenta de Almacenamiento de Azure para las copias de seguridad del registro de transacciones. El servidor secundario debe estar en la misma versión o posterior de SQL Server que el servidor SQL Server principal.

  • La base de datos principal debe usar el modelo de recuperación optimizado para cargas masivas de registros o el modelo completo. El trasvase de registros deja de funcionar si la base de datos principal cambia a un modelo de recuperación simple.

  • La cuenta que configure el trasvase de registros debe ser miembro del rol fijo de servidor sysadmin.

Creación de un recurso compartido de archivos de Azure

Las copias de seguridad del registro de transacciones del servidor principal se almacenan en un recurso compartido de archivos. Antes de configurar el trasvase de registros, debe crear un recurso compartido de archivos de Azure dentro de una cuenta de Azure Storage a la que puedan acceder los servidores primarios y secundarios.

Siga estos pasos para crear un recurso compartido de archivos de Azure en Azure Portal:

  1. Vaya al grupo de recursos en Azure Portal y seleccione la cuenta de almacenamiento que quiere usar para la copia de seguridad del registro de transacciones.

  2. En Almacenamiento de datos, seleccione Recursos compartidos de archivos y, a continuación, elija +Recurso compartido de archivos para crear un nuevo recurso compartido de archivos.

    Screenshot of the File share creation option in the Azure portal.

  3. En la pestaña Aspectos básicos, proporcione el nombre del recurso compartido de archivos, como el trasvase de registros. Puede dejar el Nivel en el valor predeterminado de Transacción optimizada.

  4. (Opcional) En la pestaña Copia de seguridad, use la casilla para habilitar las copias de seguridad del recurso compartido de archivos en Azure Backup.

  5. Seleccione Revisar y crear para revisar la configuración del recurso compartido de archivos y después seleccione Crear para crear el nuevo recurso compartido de archivos.

Creación de directorios de copia de seguridad

Una vez creado el recurso compartido de archivos, debe crear los dos directorios siguientes:

  • Un directorio en el que el principal escriba las copias de seguridad de registros
  • Un directorio para que el secundario copie y restaure la copia de seguridad del registro

Para crear los directorios, siga estos pasos:

  1. Una vez que Azure crea el recurso compartido de archivos, el portal le devuelve a la página Información general del nuevo archivo SMB.

  2. En Examinar, seleccione + Agregar directorio. Proporcione el nombre del nuevo directorio, como log-backups. Seleccione Aceptar.

    Screenshot of the add directory creation option in the Azure portal.

  3. Repita el paso anterior para agregar un segundo directorio, como restore-backups. Seleccione Aceptar.

Conexión de máquinas virtuales a un recurso compartido de archivos

Una vez creados los directorios, conecte las máquinas virtuales al recurso compartido de archivos.

Para determinar los detalles de la conexión, seleccione Conectar en la página Examinar o Información general del recurso compartido de archivos para abrir la ventana Conectar.

Screenshot of the Connect option for the file share in the Azure portal.

La ventana Conectar proporciona un script para permitir que un recurso acceda al recurso compartido de archivos. Opcionalmente, cambie la letra de unidad para montar el recurso compartido de archivos en la máquina virtual. En esta guía se usa una clave de cuenta de almacenamiento para una máquina virtual de Windows.

Seleccione Mostrar script para ver el script, copiarlo y, a continuación, ejecutarlo en cada máquina virtual con SQL Server donde planee configurar el trasvase de registros.

Después de ejecutar el script de Conectar, puede usar el siguiente cmdlet de PowerShell para comprobar la conectividad con el puerto 445:

Test-NetConnection -ComputerName yourstorageaccount.file.core.windows.net -Port 445

Si la prueba de conexión se realiza correctamente, verá una salida de TcpTestSucceeded : True.

Concesión de acceso de SQL Server al recurso compartido de archivos

Después de que las máquinas virtuales con SQL Server se puedan conectar correctamente al recurso compartido de archivos, conceda permiso a la cuenta de servicio de SQL Server para acceder al recurso compartido de archivos mediante la creación de una credencial en SQL Server mediante la dirección URL, el nombre de usuario y la contraseña del script de Conectar.

Para crear la credencial, habilite xp_cmdshell y úselo para crear la credencial antes de deshabilitar xp_cmdshell una vez más.

Para conceder acceso a la cuenta de servicio de SQL Server al recurso compartido de archivos, siga estos pasos en cada instancia de SQL Server que planea usar para el trasvase de registros:

  1. Conéctese a la máquina virtual con SQL Server con una cuenta que forma parte del rol sysadmin.

  2. Abra SQL Server Management Studio (SSMS) y conéctese a la instancia de SQL Server.

  3. Abra una nueva ventana de consulta y ejecute el siguiente código de Transact-SQL que contiene los detalles de la clave de almacenamiento obtenidos de Azure Portal:

    EXEC sp_configure 'show advanced options', 1;
    RECONFIGURE;
    exec sp_configure 'xp_cmdshell', 1;
    RECONFIGURE;
    GO
    EXEC xp_cmdshell 'cmdkey /add:"yourstorageaccount.file.core.windows.net" /user:"localhost\yourstorageaccount" /pass:"<yourpasskey>"';
    GO
    EXEC sp_configure 'xp_cmdshell', 0;
    RECONFIGURE;
    GO
    

    Después de ejecutar el comando, SSMS confirma que la credencial se ha agregado correctamente:

    Screenshot of the confirmation the credential was successfully created in SSMS.

Configuración del trasvase de registros

Después de que las instancias de SQL Server puedan acceder al recurso compartido de archivos, use SQL Server Management Studio (SSMS) para configurar el trasvase de registros.

Para configurar el trasvase de registros, hay que seguir estos pasos:

  1. Conéctese a la instancia de SQL Server principal.

  2. Haga clic con el botón derecho en la base de datos que quiera usar como base de datos principal en la configuración de trasvase de registros y, después, seleccone Propiedades.

  3. En Seleccionar una página, seleccione Trasvase de registro de transacciones.

  4. Active la casilla junto a Habilitar ésta como base de datos principal en una configuración de trasvase de registros.

  5. En Copias de seguridad de registros de transacciones, seleccione Configuración de copia de seguridad.

  6. En el cuadro Ruta de red a esta carpeta de copia de seguridad, escriba la ruta de acceso de red al recurso compartido y directorio que creó para la carpeta de copias de seguridad de los registros de transacciones.

    Por ejemplo: \\yourstorageaccount.file.core.windows.net\log-shipping\log-backups

  7. Configure los parámetros Eliminar archivos con más de y Mostrar una alerta si no se produce una copia de seguridad tras según sus necesidades empresariales.

    1. Tenga presente la programación de copia de seguridad que aparece en el cuadro Programación bajo Trabajo de copia de seguridad. Si desea personalizar la programación de su instalación, a continuación, seleccione Programar y ajuste la programación del Agente SQL Server según sus necesidades.

    2. SQL Server admite la compresión de copia de seguridad. Al crear una configuración de trasvase de registros, puede controlar el comportamiento de la compresión de copia de seguridad de las copias de seguridad del registro eligiendo una de las opciones siguientes: Usar la configuración de servidor predeterminada, Comprimir copia de seguridad o No comprimir copia de seguridad. Para obtener más información, consulte Log Shipping Transaction Log Backup Settings.

    3. Seleccione Aceptar para guardar la configuración.

  8. En Instancias de servidores secundarios y bases de datos, seleccione Agregar.

  9. Use Conectar para conectarse a la sesión de SQL Server que desee utilizar como servidor secundario.

    1. En el cuadro Base de datos secundaria , elija una base de datos de la lista o escriba el nombre de la base de datos que desea crear.

    2. En la pestaña Inicializar base de datos secundaria , elija la opción que desee utilizar para inicializar la base de datos secundaria.

    Nota:

    Si elige que SSMS inicialice la base de datos secundaria desde una copia de seguridad de base de datos, los archivos de datos y de registro de la base de datos secundaria se colocan en la misma ubicación que los archivos de datos y de registro de la base de datos master. Es probable que esta ubicación sea diferente de la de los archivos de datos y de registro de la base de datos principal.

  10. En la pestaña Copiar archivos, en el cuadro Carpeta de destino para archivos copiados, escriba la ruta de acceso de la carpeta donde desea copiar las copias de seguridad de los registros de transacciones, como el directorio restore-backups que creó para el recurso compartido de archivos:

    \\yourstorageaccount.file.core.windows.net\log-shipping\restore-backups

    1. Tenga presente la programación de copia que aparece en el cuadro Programación bajo Trabajo de copia. Si desea personalizar la programación de su instalación, a continuación, haga clic en Programar y ajuste la programación del Agente SQL Server según sus necesidades. El programa debe parecerse al de la copia de seguridad.
  11. En la pestaña Restaurar , en Estado de la base de datos al restaurar copias de seguridad, elija la opción Modo sin recuperación o Modo de espera .

    Importante

    Modo de espera es solamente una opción cuando la versión del servidor principal y el secundario son iguales. Cuando la versión principal del servidor secundario es superior a la del servidor principal, solo se permite Modo sin recuperación.

    1. Si selecciona Modo de espera, elija si desea desconectar a los usuarios de la base de datos secundaria mientras se realiza la operación de restauración.

    2. Si desea retrasar el proceso de restauración en el servidor secundario, elija un tiempo de retraso en Retrasar la restauración de las copias de seguridad al menos.

    3. Elija un umbral de alerta en Mostrar una alerta si no se produce una restauración tras.

    4. Tenga presente la programación de la restauración que aparece en el cuadro Programación bajo Trabajo de restauración. Si desea personalizar la programación de su instalación, a continuación, haga clic en Programar y ajuste la programación del Agente SQL Server según sus necesidades. El programa debe parecerse al de la copia de seguridad.

    5. Seleccione Aceptar para guardar la configuración.

  12. (Opcional) En Instancia del servidor de supervisión, active la casilla Utilizar una instancia del servidor de supervisión y, a continuación, seleccione Configuración.

    Importante

    Para supervisar esta configuración de trasvase de registros, debe agregar ahora el servidor de supervisión. Para agregar un servidor de supervisión más adelante, deberá quitar la configuración de trasvase de registros y reemplazarla por una configuración nueva que incluya un servidor de supervisión.

    1. Use Conectar y conéctese a la instancia de SQL Server que desea utilizar como servidor de supervisión.

    2. En Supervisar conexiones, elija el método de conexión que utilizarán los trabajos de copia de seguridad, copia y restauración para conectarse al servidor de supervisión.

    3. En Retención de historial, elija el período de tiempo que desea retener un registro del historial de trasvase de registros.

    4. Seleccione Aceptar para guardar la configuración.

  13. En el cuadro de diálogo Propiedades de la base de datos, use Aceptar para comenzar el proceso de configuración.