Управляемое резервное копирование SQL Server в Azure — настройки периода хранения и хранилища

В этом разделе описываются основные действия по настройке SQL Server управляемого резервного копирования в Microsoft Azure для базы данных и настройки параметров по умолчанию для экземпляра. В этом разделе также описаны шаги, необходимые для приостановки и возобновления SQL Server управляемого резервного копирования в службы Microsoft Azure для экземпляра.

Полное пошаговое руководство по настройке управляемого резервного копирования SQL Server в Microsoft Azure см. в разделах Настройка SQL Server управляемого резервного копирования в Azure и Настройка SQL Server управляемого резервного копирования в Azure для групп доступности.

Перед началом

Ограничения

Предварительные требования

  • Агент SQL Server должен быть запущен.

    Предупреждение

    Если агент SQL Server останавливаются на какой-то срок, а затем перезапускается, то можно видеть увеличение числа операций резервного копирования в зависимости от длительности промежутка времени между остановкой и запуском SQL Server Agent, а также может возникнуть очередь ожидающих выполнения операций резервного копирования журнала. Рекомендуется настроить автоматический запуск SQL Server Agent при включении системы.

  • Перед настройкой SQL Server управляемого резервного копирования в Microsoft Azure необходимо создать учетную запись хранения и учетные данные SQL, которые хранят сведения о проверке подлинности в учетной записи хранения. Дополнительные сведения см. в разделе Introduction to Key Components and Concepts статьи Резервное копирование SQL Server в URL и Lesson 2: Create a SQL Server Credential.

    Важно!

    SQL Server Управляемое резервное копирование в Microsoft Azure создает необходимые контейнеры для хранения резервных копий. Имя контейнера создается в формате "имя_экземпляра компьютера". Для групп доступности AlwaysOn имя контейнера формируется с использованием GUID группы доступности.

Безопасность

Разрешения

Для выполнения хранимых процедур, которые позволяют SQL Server управляемого резервного копирования в Microsoft Azure, необходимо быть участником System Administrator или в роли базы данных db_backupoperator с разрешениями ALTER ANY CREDENTIAL, а также EXECUTE разрешениями на sp_delete_backuphistory и smart_admin.sp_backup_master_switch хранимых процедурах. Для хранимых процедур и функций, используемых для просмотра имеющихся параметров, обычно требуются разрешения Execute для хранимой процедуры и Select для функции соответственно.

Рекомендации по включению управляемого резервного копирования SQL Server в Microsoft Azure для баз данных и экземпляров

SQL Server Управляемое резервное копирование в Microsoft Azure можно включить отдельно для отдельных баз данных или для всего экземпляра. Выбор зависит от требований к возможности восстановления для баз данных в экземпляре, требований к управлению несколькими базами данных и экземплярами и стратегическому использованию службы хранилища Azure.

Включение SQL Server управляемого резервного копирования в Microsoft Azure на уровне базы данных

Если база данных имеет особые требования к резервному копированию и сроку хранения (соглашение об уровне обслуживания о возможности восстановления), которые отличаются от других баз данных в экземпляре, настройте SQL Server управляемого резервного копирования в Microsoft Azure на уровне базы данных для этой базы данных. Настройки на уровне базы данных переопределяют настройки на уровне экземпляра. Однако оба этих параметра можно использовать совместно в одном и том же экземпляре. Ниже приведен список преимуществ и рекомендаций при включении SQL Server управляемого резервного копирования в Microsoft Azure на уровне базы данных.

  • Повышенная точность: раздельные параметры конфигурации для каждой базы данных. Возможность поддержки различных сроков хранения для отдельных баз данных.

  • Переопределяет параметры уровня экземпляра для базы данных.

  • Может использоваться для сокращения расходов на хранение за счет выбора отдельных баз данных для резервного копирования.

  • Требует управления каждой базой данных

Включение SQL Server управляемого резервного копирования в Microsoft Azure на уровне экземпляра с параметрами по умолчанию

Указывайте этот параметр, если большинство баз данных экземпляра имеют одинаковые требования к политикам резервного копирования и хранения или если нужно, чтобы при создании новых экземпляров баз данных для них автоматически создавались резервные копии. Несколько баз данных, являющихся исключением для политики, по-прежнему можно настроить отдельно. Ниже приведен список преимуществ и рекомендаций при включении SQL Server управляемого резервного копирования в Microsoft Azure на уровне экземпляра.

  • Автоматизация на уровне экземпляра: общие параметры применяются автоматически после добавления новых баз данных.

  • После создания новых баз данных в экземплярах для них автоматически создаются резервные копии

  • Можно применять к базам данных с одинаковыми требованиями срока хранения.

  • Вы по-прежнему можете настроить отдельные базы данных, для которых требуется другой период хранения, даже если SQL Server управляемое резервное копирование в Microsoft Azure, включено на уровне экземпляра с параметрами по умолчанию. Вы также можете отключить SQL Server управляемое резервное копирование в Microsoft Azure для баз данных, если вы не планируете использовать хранилище Azure для резервного копирования.

Включение и настройка SQL Server управляемого резервного копирования в Microsoft Azure для базы данных

Системная хранимая процедура smart_admin.sp_set_db_backup используется для включения SQL Server управляемого резервного копирования в Microsoft Azure для определенной базы данных. Если SQL Server Управляемое резервное копирование в Microsoft Azure впервые включено в базе данных, в дополнение к включению SQL Server управляемого резервного копирования в Microsoft Azure необходимо указать следующие сведения:

  • Имя базы данных.

  • Срок хранения.

  • Учетные данные SQL, используемые для проверки подлинности в учетной записи хранения Azure.

  • Укажите запрет на шифрование с помощью @encryption_algorithm = NO_ENCRYPTION или укажите поддерживаемый алгоритм шифрования. Дополнительные сведения о шифровании см. в разделе Backup Encryption.

SQL Server Управляемое резервное копирование в Microsoft Azure для конфигурации уровня базы данных поддерживается только через Transact-SQL.

После включения SQL Server управляемого резервного копирования в Microsoft Azure для базы данных эта информация сохраняется. Если вы изменяете конфигурацию, требуется только имя базы данных и параметр, который вы хотите изменить, SQL Server Управляемое резервное копирование в Microsoft Azure сохраняет существующие значения для других параметров, если они не указаны.

Важно!

Перед настройкой SQL Server Управляемое резервное копирование в Microsoft Azure в базе данных может быть полезно использовать существующую конфигурацию, если она имеется. Анализ параметров конфигурации для базы данных описывается далее в этом разделе.

  • Использование Transact-SQL:

    Если вы впервые включаете SQL Server управляемое резервное копирование в Microsoft Azure, обязательные параметры: @database_name, @credential_name, @encryption_algorithm@enable_backup параметр @storage_url необязателен. Если значение параметра @storage_url не указано, оно будет получено с помощью сведений учетной записи хранения из учетных данных SQL. При предоставлении URL-адреса хранилища следует предоставлять только корневой URL-адрес для учетной записи хранения, который должен соответствовать предоставленным учетным данным SQL.

    1. Установите соединение с компонентом Компонент Database Engine.

    2. На панели «Стандартная» нажмите Создать запрос.

    3. Скопируйте и вставьте следующий пример в окно запроса и нажмите кнопку Execute. В этом примере включается SQL Server управляемого резервного копирования в Microsoft Azure для базы данных TestDB. Срок хранения — 30 дней. Этот пример использует параметр шифрования с указанием алгоритма шифрования и сведений о шифраторе.

    Use msdb;  
    GO  
    EXEC smart_admin.sp_set_db_backup   
                    @database_name='TestDB'   
                    ,@enable_backup=1  
                    ,@retention_days =30   
                    ,@credential_name ='MyCredential'  
                    ,@encryption_algorithm ='AES_256'  
                    ,@encryptor_type= 'Certificate'  
                    ,@encryptor_name='MyBackupCert'  
    GO
    

    Важно!

    Для срока хранения может быть задано любое значение от 1 до 30 дней.

    Дополнительные сведения о создании сертификата для шифрования см. в пункте «Создание резервной копии сертификата» в разделе Create an Encrypted Backup.

    Дополнительные сведения об этой хранимой процедуре см. в разделе smart_admin.set_db_backup (Transact-SQL).

    Чтобы просмотреть параметры конфигурации базы данных, используйте следующий запрос.

    Use msdb  
    GO  
    SELECT * FROM smart_admin.fn_backup_db_config('TestDB')  
    

Включение и настройка параметров управляемого резервного копирования по умолчанию SQL Server в Microsoft Azure для экземпляра

Включить и настроить параметры управляемого резервного копирования в Microsoft Azure по умолчанию SQL Server на уровне экземпляра можно двумя способами: с помощью системной хранимой процедуры smart_admin.set_instance_backup или SQL Server Management Studio. Далее описаны два этих способа.

smart_admin.set_instance_backup:. Если указать значение 1 для параметра @enable_backup , можно включить резервное копирование и задать настройки по умолчанию. После применения параметров по умолчанию на уровне экземпляра они применяются к новой базе данных, добавляемой к этому экземпляру. При первом включении SQL Server управляемого резервного копирования в Microsoft Azure в дополнение к включению SQL Server управляемого резервного копирования в Microsoft Azure на экземпляре необходимо предоставить следующие сведения:

  • Срок хранения.

  • Учетные данные SQL, используемые для проверки подлинности в учетной записи хранения Azure.

  • Параметр Encryption. Укажите запрет на шифрование с помощью @encryption_algorithm = NO_ENCRYPTION или укажите поддерживаемый алгоритм шифрования. Дополнительные сведения о шифровании см. в разделе Backup Encryption.

После активации эти настройки сохраняются. При изменении конфигурации необходимо указать только имя базы данных и имя настраиваемого параметра. SQL Server Управляемое резервное копирование в Microsoft Azure сохраняет существующие значения, если они не указаны.

Важно!

Перед настройкой SQL Server управляемого резервного копирования в Microsoft Azure на экземпляре может быть полезно проверка для существующей конфигурации, если она есть. Анализ параметров конфигурации для базы данных описывается далее в этом разделе.

SQL Server Management Studio: для выполнения этой задачи в среде SQL Server Management Studio перейдите в обозреватель объектов, разверните узел Управление и нажмите правой кнопкой мыши Управляемое резервное копирование. Нажмите кнопку Настроить. Откроется диалоговое окно Управляемое резервное копирование . В этом диалоговом окне укажите срок хранения, учетные данные SQL, URL-адрес хранилища и параметры шифрования. Дополнительные сведения о настройке управляемого резервного копирования (SQL Server Management Studio) см. в этой статье.

Использование Transact-SQL

  1. Установите соединение с компонентом Компонент Database Engine.

  2. На панели «Стандартная» нажмите Создать запрос.

  3. Скопируйте и вставьте следующий пример в окно запроса и нажмите кнопку Execute.

Use msdb;  
Go  
   EXEC smart_admin.sp_set_instance_backup  
                @retention_days=30   
                ,@credential_name='sqlbackuptoURL'  
                ,@encryption_algorithm ='AES_128'  
                ,@encryptor_type= 'Certificate'  
                ,@encryptor_name='MyBackupCert'  
                ,@enable_backup=1;  
GO  
  

Важно!

Для срока хранения может быть задано любое значение от 1 до 30 дней.

Дополнительные сведения о создании сертификата для шифрования см. в пункте «Создание резервной копии сертификата» в разделе Create an Encrypted Backup.

Чтобы просмотреть параметры конфигурации по умолчанию для экземпляра, используйте следующий запрос.

Use msdb;  
GO  
SELECT * FROM smart_admin.fn_backup_instance_config ();

Использование PowerShell

  1. Запуск экземпляра PowerShell

  2. Запустите следующий скрипт, изменив его в соответствии с собственными настройками

    cd SQLSERVER:\SQL\Computer\MyInstance
    $encryptionOption = New-SqlBackupEncryptionOption -EncryptionAlgorithm Aes128 -EncryptorType ServerCertificate -EncryptorName "MyBackupCert"  
    Get-SqlSmartAdmin | Set-SqlSmartAdmin -BackupEnabled $True -BackupRetentionPeriodInDays 10 -EncryptionOption $encryptionOption  
    

Важно!

При создании базы данных после настройки параметров по умолчанию для их применения может потребоваться до 15 минут. Это также применимо к базам данных, измененных с Simple на Full модель восстановления или на Bulk-Logged .

Отключение Управляемое резервное копирование SQL Server в Microsoft Azure для базы данных

Вы можете отключить SQL Server параметрах управляемого резервного копирования в Microsoft Azure с помощью системной sp_set_db_backup хранимой процедуры. @enableparameter используется для включения и отключения SQL Server конфигураций Управляемого резервного копирования в Microsoft Azure для определенной базы данных, где значение 1 включает и 0 отключает параметры конфигурации.

Чтобы отключить Управляемое резервное копирование SQL Server в Microsoft Azure для конкретной базы данных, выполните следующие действия.

  1. Установите соединение с компонентом Компонент Database Engine.

  2. На панели «Стандартная» нажмите Создать запрос.

  3. Скопируйте и вставьте следующий пример в окно запроса и нажмите кнопку Execute.

Use msdb;  
Go  
EXEC smart_admin.sp_set_db_backup   
                @database_name='TestDB'   
                ,@enable_backup=0;  
GO

Отключение Управляемое резервное копирование SQL Server в Microsoft Azure для всех баз данных в экземпляре

Следующая процедура позволяет отключить параметры конфигурации Управляемое резервное копирование SQL Server в Microsoft Azure для всех баз данных, для которых функция Управляемое резервное копирование SQL Server в Microsoft Azure включена в экземпляре. Такие параметры конфигурации, как URL-адрес хранилища, политика хранения и учетные данные SQL, сохранятся в метаданных, и их можно будет использовать, если функция Управляемое резервное копирование SQL Server в Microsoft Azure будет включена для базы данных в дальнейшем. Если вы хотите временно приостановить SQL Server управляемого резервного копирования в службах Microsoft Azure, можно использовать параметр master, описанный в следующих разделах этой статьи.

Чтобы отключить SQL Server Управляемое резервное копирование в Microsoft Azure для всех баз данных:

  1. Установите соединение с компонентом Компонент Database Engine.

  2. На панели «Стандартная» нажмите Создать запрос.

  3. Скопируйте и вставьте следующий пример в окно запроса и нажмите кнопку Execute. В следующем примере определяется, настроено ли SQL Server Управляемое резервное копирование в Microsoft Azure на уровне экземпляра и всех баз данных с поддержкой управляемого резервного копирования SQL Server в Microsoft Azure, и выполняется системная хранимая процедура sp_set_db_backup для отключения SQL Server управляемого резервного копирования в Microsoft Azure.

-- Create a working table to store the database names  
Declare @DBNames TABLE  
  
       (  
             RowID int IDENTITY PRIMARY KEY  
             ,DBName varchar(500)  
  
       )  
-- Define the variables  
DECLARE @rowid int  
DECLARE @dbname varchar(500)  
DECLARE @SQL varchar(2000)  
-- Get the database names from the system function  
  
INSERT INTO @DBNames (DBName)  
  
SELECT db_name  
       FROM
  
       smart_admin.fn_backup_db_config (NULL)  
       WHERE is_smart_backup_enabled = 1  
  
       --Select DBName from @DBNames 
       select @rowid = min(RowID) FROM @DBNames  
  
       WHILE @rowID IS NOT NULL  
       Begin
             Set @dbname = (Select DBName From @DBNames Where RowID = @rowid)  
             Begin  
             Set @SQL = 'EXEC smart_admin.sp_set_db_backup    
                @database_name= '''+'' + @dbname+ ''+''',   
                @enable_backup=0'  
  
            EXECUTE (@SQL)  
  
             END  
             Select @rowid = min(RowID)  
             From @DBNames Where RowID > @rowid  
  
       END

Чтобы просмотреть параметры конфигурации для всех баз данных в экземпляре, выполните следующий запрос.

Use msdb;  
GO  
SELECT * FROM smart_admin.fn_backup_db_config (NULL);  
GO

Отключение параметров Управляемое резервное копирование SQL Server в Microsoft Azure по умолчанию для экземпляра

Параметры по умолчанию на уровне экземпляра применяются ко всем новым базам данных, созданным в этом экземпляре. Если параметры по умолчанию больше не нужны, то можно отключить эту конфигурацию с помощью системной хранимой процедуры smart_admin.sp_set_instance_backup . При отключении остальные параметры конфигурации, такие как URL-адрес хранилища, политика хранения или учетные данные SQL, не удаляются. Эти настройки используются в том случае, если функция Управляемое резервное копирование SQL Server в Microsoft Azure будет включена для экземпляра позднее.

Чтобы отключить параметры конфигурации Управляемое резервное копирование SQL Server в Microsoft Azure по умолчанию, выполните следующие действия.

  1. Установите соединение с компонентом Компонент Database Engine.

  2. На панели «Стандартная» нажмите Создать запрос.

  3. Скопируйте и вставьте следующий пример в окно запроса и нажмите кнопку Execute.

    Use msdb;  
    Go  
    EXEC smart_admin.sp_set_instance_backup  
                    @enable_backup=0;  
    GO
    

Использование PowerShell

  1. Запуск экземпляра PowerShell

  2. Выполните следующий сценарий:

    cd SQLSERVER:\SQL\Computer\MyInstance
    Set-SqlSmartAdmin -BackupEnabled $False  
    

Приостановка Управляемое резервное копирование SQL Server в Microsoft Azure на уровне экземпляра

Возможны ситуации, когда требуется приостановить службы Управляемое резервное копирование SQL Server в Microsoft Azure на короткий период времени. Системная хранимая smart_admin.sp_backup_master_switch процедура позволяет отключить SQL Server управляемое резервное копирование в службу Microsoft Azure на уровне экземпляра. Та же хранимая процедура используется для возобновления Управляемое резервное копирование SQL Server в Microsoft Azure. Параметр @state используется для определения того, следует ли выключить или включить управляемое резервное копирование SQL Server в Microsoft Azure.

Чтобы приостановить службы Управляемое резервное копирование SQL Server в Microsoft Azure с помощью Transact-SQL, выполните следующие действия.

  1. Установите соединение с компонентом Компонент Database Engine.

  2. На панели «Стандартная» нажмите Создать запрос.

  3. Скопируйте и вставьте следующий пример в окно запроса, а затем щелкните Execute

Use msdb;  
GO  
EXEC smart_admin.sp_backup_master_switch @new_state=0;  
Go  
  

Приостановка SQL Server управляемого резервного копирования в Microsoft Azure с помощью PowerShell

  1. Запуск экземпляра PowerShell

  2. Запустите следующий скрипт, изменив его в соответствии с собственными настройками

    cd SQLSERVER:\SQL\Computer\MyInstance
    Get-SqlSmartAdmin | Set-SqlSmartAdmin -MasterSwitch $False  
    

Возобновление работы Управляемое резервное копирование SQL Server в Microsoft Azure с помощью Transact-SQL

  1. Установите соединение с компонентом Компонент Database Engine.

  2. На панели «Стандартная» нажмите Создать запрос.

  3. Скопируйте и вставьте следующий пример в окно запроса и нажмите кнопку Execute.

Use msdb;  
Go  
EXEC smart_admin. sp_backup_master_switch @new_state=1;  
GO

Возобновление SQL Server управляемого резервного копирования в Microsoft Azure с помощью PowerShell

  1. Запуск экземпляра PowerShell

  2. Запустите следующий скрипт, изменив его в соответствии с собственными настройками

    cd SQLSERVER:\SQL\Computer\MyInstance
    Get-SqlSmartAdmin | Set-SqlSmartAdmin -MasterSwitch $True