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

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

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

Перед началом работы

Ограничения и условия

  • Не включите управляемое резервное копирование SQL Server в Microsoft Azure в базах данных, которые в настоящее время используют планы обслуживания или доставку журналов. Дополнительные сведения о взаимодействии и сосуществовании с другими функциями SQL Server см. в статье SQL Server Managed Backup to Azure: взаимодействие и сосуществование

Предпосылки

  • Агент SQL Server должен работать.

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

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

  • Учетная запись хранилища Azure и учетные данные для SQL, которые хранят информацию об аутентификации для учетной записи хранилища, должны быть созданы перед настройкой управляемого резервного копирования SQL Server в Microsoft Azure. Дополнительные сведения см. в разделе "Общие сведения о ключевых компонентах и понятиях" раздела резервного копирования SQL Server по URL-адресу и уроке 2. Создание учетных данных SQL Server.

    Это важно

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

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

Разрешения

Чтобы запустить хранимые процедуры, которые позволяют использовать управляемое резервное копирование SQL Server в Microsoft Azure, необходимо быть либо System Administrator, либо членом роли базы данных db_backupoperator с разрешениями ALTER ANY CREDENTIAL, а также с разрешениями на 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 = , либо указать поддерживаемый алгоритм шифрования. Дополнительные сведения о шифровании см. в разделе "Шифрование резервных копий".

Управляемое резервное копирование 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. Подключитесь к движку СУБД.

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

    3. Скопируйте и вставьте следующий пример в окно запроса и нажмите кнопку Execute. В этом примере для базы данных TestDB включена управляемая резервная копия SQL Server в Microsoft Azure. Срок хранения — 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 дней.

    Дополнительные сведения о создании сертификата для шифрования см. в разделе "Создание сертификата резервного копирования" в статье "Создание зашифрованной резервной копии".

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

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

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

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

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

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

  • Период хранения.

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

  • Параметр шифрования. Либо не следует шифровать с помощью @encryption_algorithm NO_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. Подключитесь к движку СУБД.

  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 дней.

Дополнительные сведения о создании сертификата для шифрования см. в разделе "Создание сертификата резервного копирования" в статье "Создание зашифрованной резервной копии".

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

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 минут, чтобы база данных была настроена с параметрами по умолчанию. Это также относится к базам данных, изменяющимся с простой на полную или массовую модель восстановления.

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

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

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

  1. Подключитесь к движку СУБД.

  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, вы можете использовать главный коммутатор, описанный в следующих разделах далее в этом разделе.

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

  1. Подключитесь к движку СУБД.

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

  3. Скопируйте и вставьте следующий пример в окно запроса и нажмите кнопку Execute. В следующем примере определяется, настроено ли SQL Server Managed Backup в Microsoft Azure на уровне экземпляра, а также перечисляются все базы данных с включенной функцией SQL Server Managed Backup в Microsoft Azure на этом экземпляре, и выполняется системная хранимая процедура sp_set_db_backup, чтобы отключить SQL Server Managed Backup в 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 System. При отключении остальные параметры конфигурации, такие как URL-адрес хранилища, политика хранения или учетные данные SQL, не удаляются. Эти параметры будут использоваться, если управляемое резервное копирование SQL Server в Microsoft Azure включено для экземпляра позже.

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

  1. Подключитесь к движку СУБД.

  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. Подключитесь к движку СУБД.

  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. Подключитесь к движку СУБД.

  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