Migración de bases de datos mediante copias de seguridad y restauración nativas
Muchos profesionales de SQL Server consideran la migración mediante un proceso de copia de seguridad y restauración el método más sencillo de migración.
Microsoft Azure Blob Storage admite dos tipos de blobs: blobs en bloques y en páginas. Para SQL Server 2016 y versiones posteriores, se prefieren los blobs de bloque. La elección entre blobs en bloques y páginas depende del tipo de credenciales usadas: la Firma de acceso compartido para blobs en bloques y la clave de almacenamiento para blobs en páginas.
La copia de seguridad en blobs en bloques ofrece ventajas como la autorización más segura, el rendimiento mejorado de la copia de seguridad y la compatibilidad con copias de seguridad de bases de datos más grandes en comparación con el blob en páginas.
Si decide realizar una copia de seguridad completa de la base de datos en un archivo, puede transferir los archivos de copia de seguridad locales a una máquina virtual de Azure a través de Azure Data Explorer o la utilidad de línea de comandos de AzCopy.
Copia de seguridad y restauración con Azure Blob Storage en SQL Server
Para realizar la copia de seguridad en una dirección URL, necesita una cuenta de Azure Storage y deberá usar el servicio Azure Blob Storage. Los blobs se guardarán en los contenedores de la cuenta de almacenamiento. A diferencia de una ruta de acceso en el disco local, la ruta de acceso a un archivo de copia de seguridad tiene un aspecto similar a https://{AccountName}.blob.core.windows.net/{ContainerName}/MyDatabase.bak
. Puede agregar nombres de carpeta adicionales en el contenedor para facilitar la identificación de las copias de seguridad (por ejemplo, FULL, DIFF, LOG).
Para realizar una copia de seguridad o una restauración desde una dirección URL, debe establecerse la autenticación entre la instancia de SQL Server y Azure. Recuerde que, si está trabajando dentro de una VM de Azure, SQL Server no sabrá que se está ejecutando en Azure.
Al crear una credencial de SQL Server, tiene dos opciones para la autenticación:
- El nombre y la clave de acceso de la cuenta de almacenamiento de Azure, que almacena la copia de seguridad como un blob en páginas
- Una firma de acceso compartido, que almacena la copia de seguridad como un blob en bloques. En el caso de bases de datos más grandes, puede realizar una copia de seguridad en varios blobs en bloques.
Sugerencia
Se recomiendan copias de seguridad de bases de datos comprimidas para bases de datos más grandes.
La restauración a partir de una dirección URL es tan sencilla como realizar la restauración desde un disco o un recurso compartido de red. En SQL Server Management Studio, seleccione una dirección URL del tipo de soporte físico de copia de seguridad en el Asistente. Si utiliza Transact-SQL, en lugar de usar FROM DISK
, usará FROM URL
junto con la ubicación adecuada y los nombres de archivo de copia de seguridad.
Nota:
Se admiten los conjuntos de copia de seguridad seccionados y se recomiendan para mejorar el rendimiento. Además, seccione las copias de seguridad si son menores de 200 GB para evitar el límite de bloques.
Ejecute la instrucción siguiente para realizar una copia de seguridad de un registro de transacciones.
BACKUP LOG contoso
TO URL = 'https://myacc.blob.core.windows.net/mycontainer/contoso202003271200.trn'
Ejecute la instrucción siguiente para restaurar una copia de seguridad completa de la base de datos sin recuperarla, para que pueda aplicarse una copia de seguridad diferencial o del registro de transacciones.
RESTORE DATABASE contoso
FROM URL = 'https://myacc.blob.core.windows.net/mycontainer/contoso20200327.bak'
WITH NORECOVERY