Restauración de bases de datos SQL Server en máquinas virtuales de Azure
En este artículo se describe cómo restaurar una base de datos SQL Server que se ejecuta en una máquina virtual (VM) de Azure cuya copia de seguridad se ha realizado en un almacén de Azure Backup Recovery Services con el servicio Azure Backup.
En este artículo se describe cómo restaurar las bases de datos SQL Server. Para obtener más información, consulte Copia de seguridad de bases de datos de SQL Server en máquinas virtuales de Azure.
Nota
Consulte la matriz de compatibilidad de copia de seguridad de SQL para más información sobre las configuraciones y los escenarios admitidos.
Restauración a un momento dado o a un punto de recuperación
Azure Backup puede restaurar las bases de datos SQL Server que se ejecutan en las máquinas virtuales de Azure como se indica a continuación:
- Restaure a una fecha u hora específicas (hasta los segundos) mediante copias de seguridad del registro de transacciones. Azure Backup determina automáticamente la copia de seguridad diferencial completa apropiada y la cadena de copias de seguridad de registros necesarias para restaurar los datos en función del tiempo seleccionado.
- Restaure una copia de seguridad completa o diferencial específica para restaurar a un punto de recuperación específico.
Requisitos previos de la restauración
Antes de restaurar una base de datos, tenga en cuenta lo siguiente:
- Puede restaurar la base de datos en una instancia de SQL Server en la misma región de Azure.
- El servidor de destino debe estar registrado como origen en el mismo almacén. Si desea restaurar copias de seguridad en un almacén diferente, habilite la restauración entre suscripciones.
- Si tiene varias instancias que se ejecutan en un servidor, todas las instancias deben estar en funcionamiento. De lo contrario, el servidor no aparecerá en la lista de servidores de destino para restaurar la base de datos. Para más información, consulte los pasos de solución de problemas.
- Para restaurar una base de datos cifrada TDE en otra de SQL Server, primero debe restaurar el certificado en el servidor de destino.
- Las bases de datos habilitadas para CDC deben restaurarse con la opción Restaurar como archivos.
- Se recomienda encarecidamente restaurar la base de datos "maestra" mediante la opción Restaurar como archivos y, a continuación, restaurar mediante comandos de T-SQL.
- Para todas las bases de datos del sistema (model, msdb), detenga el servicio Agente SQL Server antes de desencadenar la restauración.
- Cierre las aplicaciones que pueden intentar quitar una conexión a cualquiera de estas bases de datos.
- En el caso de las bases de datos maestras, no se admite la opción Ubicación alternativa para la restauración. Se recomienda restaurar la base de datos maestra mediante la opción Restaurar como archivos y, a continuación, restaurar mediante los comandos de
T-SQL
. - En el caso de
msdb
ymodel
, la opción Ubicación alternativa solo se admite cuando el nombre de la base de datos restaurada es diferente del nombre de la base de datos de destino. Si desea restaurar el mismo nombre con la base de datos de destino, se recomienda restaurar mediante la opción Restaurar como archivos y, a continuación, restaurar mediante los comandos deT-SQL
.
Restaurar una base de datos
Para realizar la restauración, necesita los siguientes permisos:
- Permisos de operador de copia de seguridad en el almacén en el que se realiza la restauración.
- Acceso de colaborador (escritura) a la máquina virtual de origen de la que se realiza la copia de seguridad.
- Acceso de colaborador (escritura) a la máquina virtual de destino:
- Si va a restaurar en la misma VM, esta será la VM de origen.
- Si va a restaurar en una ubicación alternativa, esta será la nueva VM de destino.
Realice la restauración como sigue:
En Azure Portal, vaya al Centro de copia de seguridad y haga clic en Restaurar.
Seleccione SQL en Azure VM como tipo de origen de datos, seleccione la base de datos que desea restaurar y haga clic en Continuar.
En Restaurar configuración, especifique dónde o cómo quiere restaurar los datos:
Ubicación alternativa: restaura la base de datos en una ubicación alternativa y mantiene la base de datos de origen original.
Sobrescribir la base de datos: restaura los datos en la misma instancia de SQL Server que el origen. Esta opción sobrescribe la base de datos original.
Importante
Si la base de datos seleccionada pertenece a un grupo de disponibilidad AlwaysOn, SQL no permite sobrescribir la base de datos. Solo está disponible Ubicación alternativa.
Restaurar como archivos: En lugar de restaurar como una base de datos, restaure los archivos de copia de seguridad que se pueden recuperar como base de datos más tarde en cualquier máquina en la que los archivos están presentes mediante SQL Server Management Studio.
Restauración a una ubicación alternativa
En el menú Restaurar configuración, en Where to Restore (Ubicación de restauración), seleccione Ubicación alternativa.
Seleccione el nombre de SQL Server y la instancia en la que desea restaurar la base de datos.
En el cuadro de diálogo Nombre de la base de datos restaurada, escriba el nombre de la base de datos de destino.
Si procede, seleccione Overwrite if the DB with the same name already exists on selected SQL instance (Sobrescribir si ya existe una base de datos con el mismo nombre en la instancia de SQL seleccionada).
Seleccione Punto de restauración y seleccione si restaurar a un momento dado o restaurar a un punto de recuperación específico.
En el menú Configuración avanzada:
Si desea mantener la base de datos no operativa después de la restauración, habilite Restaurar con NORECOVERY.
Si desea cambiar la ubicación de restauración en el servidor de destino, escriba nuevas rutas de acceso de destino.
Seleccione Aceptar para desencadenar la restauración. Realice un seguimiento del progreso de la restauración en el área Notificaciones o en la visualización Trabajos de copia de seguridad del almacén.
Nota:
La restauración a un momento dado solo está disponible para copias de seguridad de registros de bases de datos con un modelo de recuperación optimizado para cargas masivas y completas de registros.
Restauración y sobrescritura
En el menú Restaurar configuración, en Where to Restore (Ubicación de restauración), seleccione Sobrescribir la base de datos>Aceptar.
En Seleccionar punto de restauración, seleccione Registros (a un momento dado) a Restauración a un momento dado. O bien, seleccione Completa y diferencial para restaurar a un punto de recuperación específico.
Nota:
La restauración a un momento dado solo está disponible para copias de seguridad de registros de bases de datos con un modelo de recuperación optimizado para cargas masivas y completas de registros.
Restaurar como archivos
Para restaurar datos de copia de seguridad como archivos .bak en lugar de una base de datos, seleccione Restaurar como archivos. Cuando los archivos se vuelcan a una ruta de acceso especificada, puede llevar estos archivos a cualquier máquina en la que quiera restaurarlos como base de datos. Dado que puede mover estos archivos a cualquier máquina, ahora puede restaurar los datos entre suscripciones y regiones.
En ¿Dónde y cómo se realiza la restauración? , seleccione Restaurar como archivos.
Seleccione el nombre de SQL Server en el que quiere restaurar los archivos de copia de seguridad.
En Destination path on the server (Ruta de acceso de destino en el servidor), especifique la ruta de acceso de carpetas en el servidor seleccionado en el paso 2. Se trata de la ubicación en la que el servicio volcará todos los archivos de copia de seguridad necesarios. Típicamente, una ruta de acceso a un recurso compartido de red o una ruta de acceso de un recurso compartido de archivos de Azure montado cuando se especifica como una ruta de acceso de destino facilita el acceso a estos archivos de parte de otras máquinas en la red o en el mismo recurso compartido de archivos de Azure montado en ellas.
Nota:
Para restaurar los archivos de copia de seguridad de base de datos de un recurso compartido de archivos de Azure montado en la máquina virtual registrada de destino, asegúrese de que NT AUTHORITY\SYSTEM tenga acceso al recurso compartido de archivos. Puede realizar los pasos que se indican a continuación para conceder los permisos de lectura y escritura al AFS montado en la máquina virtual:
- Ejecutar
PsExec -s cmd
para entrar en el shell de NT AUTHORITY\SYSTEM- Ejecute
cmdkey /add:<storageacct>.file.core.windows.net /user:AZURE\<storageacct> /pass:<storagekey>
- Comprobar el acceso con
dir \\<storageacct>.file.core.windows.net\<filesharename>
- Ejecute
- Iniciar una restauración como archivos desde el almacén de copia de seguridad en
\\<storageacct>.file.core.windows.net\<filesharename>
como ruta de acceso.
Puede descargar PsExec de la página Sysinternals.
- Ejecutar
Seleccione Aceptar.
Seleccione Punto de restauración y seleccione si restaurar a un momento dado o restaurar a un punto de recuperación específico.
Al realizar la restauración a un momento dado de la base de datos SQL mediante Restaurar como archivos, almacenará todos los puntos de recuperación de la copia de seguridad completa en el momento dado seleccionado. Entonces puede realizar la restauración con estos archivos como una base de datos en cualquier máquina en la que estén presentes mediante SQL Server Management Studio.
Restauración a un momento dado
Si ha seleccionado Registros (punto en el tiempo) como el tipo de restauración, haga lo siguiente:
En Fecha y hora de restauración, abra el calendario. En el calendario, las fechas que contienen puntos de recuperación se muestran en negrita, y la fecha actual está resaltada.
Seleccione una fecha con puntos de recuperación. No puede seleccionar fechas que no tengan puntos de recuperación.
Una vez seleccionada una fecha, el gráfico de escala de tiempo muestra los puntos de recuperación disponibles en un rango continuo.
Especifique una hora para la recuperación en el gráfico de escala de tiempo o seleccione una hora. Después, seleccione Aceptar.
Restauración parcial como archivos
El servicio Azure Backup decide la cadena de archivos que se descargarán durante la restauración como archivos. Pero hay escenarios en los que es posible que no quiera volver a descargar todo el contenido.
Por ejemplo, cuando tiene una directiva de copia de seguridad de los diferenciales y registros diarios y semanales completos y ya descargó archivos para un diferencial determinado. Se dio cuenta de que no era el punto de recuperación correcto y decidió descargar el diferencial del día siguiente. Ahora solo necesita el archivo del diferencial, ya que ya tiene el inicio completo. Con la capacidad de restauración parcial como archivos, proporcionada por Azure Backup, ahora puede excluir todos los elementos de la cadena de descarga y descargar solo el diferencial.
Exclusión de tipos de archivo de copia de seguridad
ExtensionSettingsOverrides.json es un archivo JSON (notación de objetos JavaScript) que contiene invalidaciones para varias configuraciones del servicio Azure Backup para SQL. Para la operación "Restauración parcial como archivos", se debe agregar un nuevo campo RecoveryPointTypesToBeExcludedForRestoreAsFiles
JSON. Este campo contiene un valor de cadena que indica qué tipos de punto de recuperación se deben excluir en la siguiente operación de restauración como archivos.
En la máquina de destino donde se descargarán los archivos, vaya a la carpeta "C:\Archivos de programa\Azure Workload Backup\bin".
Cree un nuevo archivo JSON denominado "ExtensionSettingsOverrides.JSON", si aún no existe.
Agregue el siguiente par de valor y clave JSON.
{ "RecoveryPointTypesToBeExcludedForRestoreAsFiles": "ExcludeFull" }
No es necesario reiniciar ningún servicio. El servicio Azure Backup intentará excluir los tipos de copia de seguridad de la cadena de restauración, como se mencionó en este archivo.
El RecoveryPointTypesToBeExcludedForRestoreAsFiles
solo toma valores específicos que indican los puntos de recuperación que se excluirán durante la restauración. Para SQL, estos valores son:
- ExcludeFull (se descargarán otros tipos de copia de seguridad, como diferenciales y registros, si están presentes en la cadena de puntos de restauración).
- ExcludeFullAndDifferential (se descargarán otros tipos de copia de seguridad, como registros, si están presentes en la cadena de puntos de restauración).
- ExcludeFullAndIncremental (se descargarán otros tipos de copia de seguridad, como registros, si están presentes en la cadena de puntos de restauración)
- ExcludeFullAndDifferentialAndIncremental (se descargarán otros tipos de copia de seguridad, como registros, si están presentes en la cadena de puntos de restauración).
Restauración a un punto de restauración específico
Si ha seleccionado Completo y diferencial como el tipo de restauración, haga lo siguiente:
Seleccione un punto de recuperación de la lista y seleccione Aceptar para completar el procedimiento de punto de restauración.
Nota:
De forma predeterminada, se muestran los puntos de recuperación de los 30 últimos días. Para mostrar los puntos de recuperación anteriores a 30 días, seleccione Filtrar y elija un intervalo personalizado.
Restauración de bases de datos con un gran número de archivos
Si el tamaño de la cadena total de archivos en una base de datos es mayor que un determinado límite, Azure Backup almacena la lista de archivos de la base de datos en un componente pit diferente, de modo que no podrá definir la ruta de la restauración de destino durante la operación de restauración. En su lugar, los archivos se restaurarán en la ruta predeterminada SQL.
Recuperación de una base de datos desde un archivo .bak mediante SSMS
Puede usar la operación Restaurar como archivos para restaurar los archivos de base de datos en formato .bak
durante la restauración desde Azure Portal. Más información.
Una vez completada la restauración del archivo .bak
en la máquina virtual de Azure, puede desencadenar la restauración mediante comandos TSQL a través de SSMS.
Para restaurar los archivos de base de datos en la ruta de acceso original del servidor de origen, quite la cláusula MOVE
de la consulta de restauración de TSQL.
Ejemplo
USE [master]
RESTORE DATABASE [<DBName>] FROM DISK = N'<.bak file path>'
Nota
No debería tener los mismos archivos de base de datos en el servidor de destino (restaurar con reemplazar). Además, puede habilitar la inicialización instantánea de archivos en el servidor de destino para reducir la sobrecarga de tiempo de inicialización de archivos.
Para reubicar los archivos de base de datos del servidor de restauración de destino, puede enmarcar u comando TSQL mediante cláusulas MOVE
.
USE [master]
RESTORE DATABASE [<DBName>] FROM DISK = N'<.bak file path>' MOVE N'<LogicalName1>' TO N'<TargetFilePath1OnDisk>', MOVE N'<LogicalName2>' TO N'<TargetFilePath2OnDisk>' GO
Ejemplo
USE [master]
RESTORE DATABASE [test] FROM DISK = N'J:\dbBackupFiles\test.bak' WITH FILE = 1, MOVE N'test' TO N'F:\data\test.mdf', MOVE N'test_log' TO N'G:\log\test_log.ldf', NOUNLOAD, STATS = 5
GO
Si hay más de dos archivos para la base de datos, puede agregar cláusulas MOVE
adicionales a la consulta de restauración. También puede usar SSMS para la recuperación de bases de datos mediante archivos .bak
. Más información.
Nota
Para la recuperación de bases de datos de gran tamaño, se recomienda usar instrucciones TSQL. Si quiere reubicar los archivos de base de datos específicos, consulte la lista de archivos de base de datos en el formato JSON creado durante la operación Restaurar como archivos.
Restauración entre regiones
Restauración entre regiones (CRR), una de las opciones de restauración, le permite restaurar bases de datos SQL hospedadas en máquinas virtuales de Azure en una región secundaria, que es una región emparejada de Azure.
Para incorporar la característica, lea la sección Antes de empezar.
Para ver si la opción CRR está habilitada, siga las instrucciones de Configuración de la restauración entre regiones.
Ver los elementos de copia de seguridad de la región secundaria
Si la opción CRR está habilitada, puede ver los elementos de copia de seguridad de la región secundaria.
- En el portal, vaya a Almacén de Recovery Services>Elementos de copia de seguridad.
- Seleccione Región secundaria para ver los elementos de la región secundaria.
Nota:
En la lista solo se mostrarán los tipos de administración de copia de seguridad que admiten la característica CRR. Actualmente, solo se admite la restauración de datos de regiones secundarias en una región secundaria.
Restauración en la región secundaria
La experiencia del usuario de restauración de la región secundaria será similar a la de restauración de la región primaria. Al configurar los detalles en el panel Restaurar configuración para configurar la restauración, se le pedirá que proporcione solo los parámetros de la región secundaria. Debe existir un almacén en la región secundaria y el servidor SQL se debe registrar en el almacén de la región secundaria.
Nota:
- Una vez que se desencadena la restauración y se ha iniciado la fase de transferencia de datos, no se puede cancelar el trabajo de restauración.
- El rol y el nivel de acceso necesarios para realizar la operación de restauración en varias regiones son el rol Operador de copia de seguridad en la suscripción y el acceso de Colaborador (escritura) en las máquinas virtuales de origen y de destino. Para ver los trabajos de copia de seguridad, Lector de copias de seguridad es el permiso mínimo requerido en la suscripción.
- El RPO para que los datos de copia de seguridad estén disponibles en la región secundaria es de 12 horas. Por lo tanto, cuando se activa el CRR, el RPO para la región secundaria es de 12 horas + la duración de la frecuencia de registro (que puede establecerse en un mínimo de 15 minutos).
Obtenga información sobre los requisitos mínimos de roles para la restauración entre regiones.
Supervisión de trabajos de restauración en la región secundaria
En Azure Portal, vaya al Centro de copia de seguridad>Trabajos de copia de seguridad.
Filtre la operación por CrossRegionRestore para ver los trabajos de la región secundaria.
Restauración entre suscripciones
Azure Backup ahora permite restaurar una base de datos SQL en cualquier suscripción (según los siguientes requisitos de RBAC de Azure) desde el punto de restauración. De manera predeterminada, Azure Backup restaura a la misma suscripción donde están disponibles los puntos de restauración.
Con la restauración entre suscripciones (CSR), tiene la flexibilidad de restaurar a cualquier suscripción y a cualquier almacén del inquilino si los permisos de restauración están disponibles. De manera predeterminada, CSR está habilitado en todos los almacenes de Recovery Services (almacenes existentes y recién creados).
Nota:
- Puede desencadenar la restauración entre suscripciones desde el almacén de Recovery Services.
- CSR solo se admite para la copia de seguridad basada en streaming y no se admite para la copia de seguridad basada en instantáneas.
- No se admite la restauración entre regiones (CRR) con CSR.
Requisitos de RBAC de Azure
Tipo de operación | Operador de copia de seguridad | Almacén de Recovery Services | Operador alternativo |
---|---|---|---|
Restaurar base de datos o restaurar como archivos | Virtual Machine Contributor |
Máquina virtual de origen de la que se hizo una copia de seguridad | En lugar de un rol incorporado, puede considerar un rol personalizado que tenga los siguientes permisos: - Microsoft.Compute/virtualMachines/write - Microsoft.Compute/virtualMachines/read |
Virtual Machine Contributor |
Máquina virtual de destino en la que se restaurará la base de datos o se crearán los archivos. | En lugar de un rol incorporado, puede considerar un rol personalizado que tenga los siguientes permisos: - Microsoft.Compute/virtualMachines/write - Microsoft.Compute/virtualMachines/read |
|
Backup Operator |
Almacén de Recovery Services de destino |
De manera predeterminada, CSR está habilitado en el almacén de Recovery Services. Para actualizar la configuración de restauración del almacén de Recovery Services, vaya a Propiedades>Restauración entre suscripciones y realice los cambios necesarios.
Pasos siguientes
Administrar y supervisar bases de datos SQL Server cuya copia de seguridad se ha realizado con Azure Backup.