Habilitación de la copia de seguridad administrada de SQL Server en Azure
Se aplica a: SQL Server
En este tema se describe cómo habilitar la copia de seguridad administrada de SQL Server en Microsoft Azure con la configuración predeterminada en el nivel de la base de datos y de la instancia. También se describe cómo habilitar las notificaciones de correo electrónico y cómo supervisar la actividad de copia de seguridad.
En este tutorial se usa Azure PowerShell. Antes de iniciar el tutorial, descargue e instale Azure PowerShell.
Importante
Si también quiere habilitar opciones avanzadas o usar una programación personalizada, configure las opciones antes de habilitar por primera vez la copia de seguridad administrada de SQL Server en Microsoft Azure. Para obtener más información, consulte Configurar las opciones avanzadas de copia de seguridad administrada de SQL Server en Microsoft Azure.
Creación del contenedor de Azure Blob Storage
El proceso requiere una cuenta de Azure. Si ya tiene una cuenta, vaya al paso siguiente. En caso contrario, puede comenzar a trabajar con una evaluación gratuita o explorar las opciones de compra.
Para obtener más información sobre las cuentas de almacenamiento, consulte Acerca de las cuentas de almacenamiento de Azure.
Inicie sesión en la cuenta de Azure.
az login
Creación de una cuenta de almacenamiento de Azure. si ya tiene una cuenta de almacenamiento, vaya al paso siguiente. El comando siguiente crea una cuenta de almacenamiento denominada
<backupStorage>
en la región Este de EE. UU.az storage account create -n <backupStorage> -l "eastus" --resource-group <resourceGroup>
Cree un contenedor de blobs denominado
<backupContainer>
para los archivos de copia de seguridad.$keys = az storage account keys list --account-name <backupStorage> --resource-group <resourceGroup> | ConvertFrom-Json az storage container create --name <backupContainer> --account-name <backupStorage> --account-key $keys[0].value
Genere una firma de acceso compartido (SAS) para acceder al contenedor. El comando siguiente crea un token de SAS para el contenedor de blobs
<backupContainer>
que expira en un año.az storage container generate-sas --name <backupContainer> --account-name <backupStorage> --account-key $keys[0].value
Nota:
Estos pasos también se pueden realizar mediante Azure Portal.
La salida contendrá la dirección URL del contenedor o el token de SAS. A continuación se muestra un ejemplo:
https://managedbackupstorage.blob.core.windows.net/backupcontainer?sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl
Si se incluye la dirección URL, sepárela del token de SAS en el signo de interrogación (no incluya el signo de interrogación). Por ejemplo, la salida anterior tendría como resultado los dos valores siguientes.
Tipo | Output |
---|---|
Dirección URL del contenedor | https://managedbackupstorage.blob.core.windows.net/backupcontainer |
Token de SAS | sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl |
Anote la dirección URL del contenedor y la SAS para usarlos al crear una credencial de SQL. Para obtener más información sobre SAS, consulte Firmas de acceso compartido, Parte 1: Descripción del modelo SAS.
Habilitación de la copia de seguridad administrada en Azure
Cree una credencial de SQL para la URL de SAS: use el token de SAS para crear una credencial de SQL para la dirección URL del contenedor de blobs. En SQL Server Management Studio, use la siguiente consulta de Transact-SQL para crear la credencial para la dirección URL del contenedor de blobs según el ejemplo siguiente:
CREATE CREDENTIAL [https://managedbackupstorage.blob.core.windows.net/backupcontainer] WITH IDENTITY = 'Shared Access Signature', SECRET = 'sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl'
Asegúrese de que el servicio del Agente SQL Server se haya iniciado y esté ejecutándose: inicie el Agente SQL Server, si no se está ejecutando. La copia de seguridad administrada de SQL Server en Microsoft Azure requiere que Agente SQL Server se ejecute en la instancia para realizar operaciones de copia de seguridad. Puede ser conveniente configurar el Agente SQL Server para que se ejecute automáticamente con el fin de asegurarse de que las operaciones de copia de seguridad pueden realizarse periódicamente.
Determinar el período de retención: determine el período de retención para los archivos de copia de seguridad. El período de retención se especifica en días y puede oscilar entre 1 y 90.
Habilitar y configurar la copia de seguridad administrada de SQL Server en Microsoft Azure: inicie SQL Server Management Studio y conéctese a la instancia de SQL Server objetivo. En la ventana de consulta, ejecute la siguiente instrucción después de modificar los valores correspondientes al nombre de la base de datos, la dirección URL del contenedor y el período de retención según sus requisitos:
Importante
Para habilitar la copia de seguridad administrada en el nivel de instancia, especifique
NULL
para el parámetrodatabase_name
.USE msdb; GO EXEC msdb.managed_backup.sp_backup_config_basic @enable_backup = 1, @database_name = 'yourdatabasename', @container_url = 'https://managedbackupstorage.blob.core.windows.net/backupcontainer', @retention_days = 30 GO
La copia de seguridad administrada de SQL Server en Microsoft Azure ahora está habilitada en la base de datos especificada. Puede tardarse hasta 15 minutos en que las operaciones de copia de seguridad de la base de datos empiecen a ejecutarse.
Revisa la configuración predeterminada de los eventos extendidos: revisa la configuración de eventos extendidos mediante la ejecución de la siguiente instrucción de Transact-SQL.
SELECT * FROM msdb.managed_backup.fn_get_current_xevent_settings()
Debe ver que los eventos de canal Administración, Operativo y Analítico están habilitados de forma predeterminada y no se pueden deshabilitar. Debe ser suficiente supervisar los eventos que requieren intervención manual. Puede habilitar los eventos de depuración, pero los canales de depuración incluyen eventos informativos y de depuración que usa la copia de seguridad administrada de SQL Server en Microsoft Azure para detectar problemas y solucionarlos.
Habilitar y configurar la notificación del estado de mantenimiento: la copia de seguridad administrada de SQL Server en Microsoft Azure tiene un procedimiento almacenado que crea un trabajo del agente para enviar notificaciones por correo electrónico de los errores o las advertencias que puedan requerir atención. En los pasos siguientes se describe el proceso para habilitar y configurar las notificaciones por correo electrónico:
Configure Correo electrónico de base de datos si aún no está habilitado en la instancia. Para obtener más información, vea Configure Database Mail.
Configure la notificación del Agente SQL Server para que use Correo electrónico de base de datos. Para más información, consulte Configurar el Agente SQL Server para que use el Correo electrónico de base de datos.
Habilite las notificaciones por correo electrónico para recibir los errores y advertencias de copia de seguridad: en la ventana de consulta, ejecute las siguientes instrucciones Transact-SQL:
EXEC msdb.managed_backup.sp_set_parameter @parameter_name = 'SSMBackup2WANotificationEmailIds', @parameter_value = '<email1;email2>'
Consultar los archivos de copia de seguridad en la cuenta de almacenamiento de Microsoft Azure: conéctese a la cuenta de almacenamiento desde SQL Server Management Studio o desde Azure Portal. Verá los archivos de copia de seguridad del contenedor especificado. Tenga en cuenta que podría ver una base de datos y una copia de seguridad de registros antes de que transcurran 5 minutos desde la habilitación de la copia de seguridad administrada de SQL Server en Microsoft Azure para la base de datos.
Supervise el estado de mantenimiento: puede supervisar a través de notificaciones por correo electrónico que configuró previamente o supervisar los eventos registrados de forma activa. Las siguientes son algunas instrucciones de Transact-SQL de ejemplo que se utilizan para ver los eventos:
-- view all admin events USE msdb; GO DECLARE @startofweek datetime DECLARE @endofweek datetime SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP) SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP) DECLARE @eventresult TABLE (event_type nvarchar(512), event nvarchar (512), timestamp datetime ) INSERT INTO @eventresult EXEC managed_backup.sp_get_backup_diagnostics @begin_time = @startofweek, @end_time = @endofweek SELECT * from @eventresult WHERE event_type LIKE '%admin%'
-- to enable debug events USE msdb; GO EXEC managed_backup.sp_set_parameter 'FileRetentionDebugXevent', 'True'
-- View all events in the current week USE msdb; GO DECLARE @startofweek datetime DECLARE @endofweek datetime SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP) SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP) EXEC managed_backup.sp_get_backup_diagnostics @begin_time = @startofweek, @end_time = @endofweek;
Los pasos descritos en esta sección son específicos para configurar la copia de seguridad administrada de SQL Server en Microsoft Azure por primera vez en la base de datos. Puede modificar las configuraciones existentes usando los mismos procedimientos almacenados del sistema y proporcionar los nuevos valores.