Управляемое резервное копирование SQL Server в Microsoft Azure
Область применения:
SQL Server (все поддерживаемые версии)
Управляемое резервное копирование SQL Server в Microsoft Azure управляет резервным копированием SQL Server в хранилище BLOB-объектов Microsoft Azure и автоматизирует его. Серверу SQL Server можно разрешить определять расписание резервного копирования на основе рабочей нагрузки транзакций в базе данных. Кроме того, для настройки расписания можно воспользоваться дополнительными параметрами. Параметры хранения определяют продолжительность хранения резервных копий в хранилище BLOB-объектов Azure. Управляемое резервное копирование SQL Server в Microsoft Azure поддерживает восстановление на момент времени для указанного периода хранения.
Начиная с версии SQL Server 2016 (13.x);, процедуры и принцип действия Управляемое резервное копирование SQL Server в Microsoft Azure изменились. Дополнительные сведения см. в статье Перенос параметров управляемой архивации SQL Server 2014 в SQL Server 2016.
Совет
Управляемое резервное копирование SQL Server в Microsoft Azure рекомендуется использовать для экземпляров SQL Server, работающих на виртуальных машинах Microsoft Azure.
Преимущества
В настоящий момент автоматизация резервного копирования множества баз данных требует разработки стратегии резервного копирования, написания специального кода и планирования резервного копирования. С помощью Управляемое резервное копирование SQL Server в Microsoft Azureможно создать план резервного копирования, указав только период и место хранения. Хотя дополнительные параметры и доступны, они не требуются. Управляемое резервное копирование SQL Server в Microsoft Azure позволяет планировать резервное копирование, выполнять его и обслуживать резервные копии.
Управляемое резервное копирование SQL Server в Microsoft Azure можно настроить на уровне базы данных или экземпляра SQL Server. При настройке на уровне экземпляра также автоматически создаются резервные копии новых баз данных. С помощью параметров на уровне базы данных можно переопределить значения по умолчанию на уровне экземпляра в каждом конкретном случае.
Кроме того, резервные копии можно зашифровать, чтобы обеспечить дополнительную безопасность. Вы можете также настроить пользовательское расписание, чтобы управлять резервным копированием. Дополнительные сведения о преимуществах использования хранилища BLOB-объектов Windows Azure для резервных копий SQL Server см. в разделе Резервное копирование и восстановление SQL Server с помощью службы хранилища BLOB-объектов Microsoft Azure.
Предварительные требования
Управляемое резервное копирование SQL Server в Microsoft Azure использует службу хранилища Microsoft Azure для хранения файлов резервных копий. Ниже перечислены необходимые компоненты.
| Предварительные требования | Описание |
|---|---|
| Учетная запись Microsoft Azure | Прежде чем просмотреть варианты приобретения , можно начать работу с Azure, используя бесплатную пробную версию. |
| Учетная запись хранения Azure | Резервные копии хранятся в хранилище BLOB-объектов Azure, связанном с учетной записью хранения Azure. Чтобы создать учетную запись хранения, воспользуйтесь подробной пошаговой инструкцией в статье об учетных записях хранения Azure. |
| Контейнер больших двоичных объектов | Для упорядочивания больших двоичных объектов используются контейнеры. Необходимо указать целевой контейнер для файлов резервных копий. Контейнер можно создать на портале управления Azureили с помощью команды New-AzureStorageContainerAzure PowerShell . |
| Подписанный URL-адрес | Доступ к целевому контейнеру зависит от подписанного URL-адреса. Общие сведения о SAS см. в статье Подписанные URL-адреса. Часть 1. подписанных URL-адресов (SAS). Маркер SAS можно создать в коде или с помощью команды PowerShell New-AzureStorageContainerSASToken . Скрипт PowerShell, упрощающий этот процесс, см. в статье Simplifying creation of SQL Credentials with Shared Access Signature (SAS) tokens on Azure Storage with Powershell(Упрощение создания учетных данных SQL с использованием маркера подписанного URL-адреса в службе хранилища Azure с помощью Powershell). Маркер SAS можно хранить в SQL Credential и использовать с Управляемое резервное копирование SQL Server в Microsoft Azure. |
| Агент SQL Server | Чтобы компонент Управляемое резервное копирование SQL Server в Microsoft Azure работал, должен быть запущен агент SQL Server. Рекомендуется установить автоматический запуск. |
Components
Transact-SQL — это основной интерфейс для взаимодействия с Управляемое резервное копирование SQL Server в Microsoft Azure. Системные хранимые процедуры используются для активации, настройки и отслеживания Управляемое резервное копирование SQL Server в Microsoft Azure. Системные функции используются для получения существующих параметров конфигурации, значений параметров и данных файлов резервных копий. Расширенные события используются для отображения ошибок и предупреждений. Механизмы предупреждений включаются с помощью заданий агента SQL Server и управления на основе политик SQL Server. Далее представлен список объектов и описание их функций по отношению к Управляемое резервное копирование SQL Server в Microsoft Azure.
Можно также настроить Управляемое резервное копирование SQL Server в Microsoft Azureс помощью командлетов PowerShell. SQL Server Management Studio поддерживает восстановление резервных копий, созданных Управляемое резервное копирование SQL Server в Microsoft Azure , с помощью задачи Восстановление базы данных .
| Системный объект | Описание |
|---|---|
| MSDB | Хранит метаданные, журнал резервного копирования для всех резервных копий, созданных Управляемое резервное копирование SQL Server в Microsoft Azure. |
| managed_backup.sp_backup_config_basic (Transact-SQL) | Запускает компонент Управляемое резервное копирование SQL Server в Microsoft Azure. |
| managed_backup.sp_backup_config_advanced (Transact-SQL) | Настраивает дополнительные параметры для Управляемое резервное копирование SQL Server в Microsoft Azure, например шифрование. |
| managed_backup.sp_backup_config_schedule (Transact-SQL) | Создает пользовательское расписание для Управляемое резервное копирование SQL Server в Microsoft Azure. |
| managed_backup.sp_ backup_master_switch (Transact-SQL) | Приостанавливает и возобновляет работу Управляемое резервное копирование SQL Server в Microsoft Azure. |
| managed_backup.sp_set_parameter (Transact-SQL) | Включает и настраивает мониторинг для Управляемое резервное копирование SQL Server в Microsoft Azure. Примеры: включение расширенных событий, настроек почты для уведомлений. |
| managed_backup.sp_backup_on_demand (Transact-SQL) | Выполняет резервное копирование ad-hoc для базы данных, которая использует Управляемое резервное копирование SQL Server в Microsoft Azure без нарушения цепочки журналов. |
| managed_backup.fn_backup_db_config (Transact-SQL) | Возвращает текущее состояние Управляемое резервное копирование SQL Server в Microsoft Azure и значения конфигурации для базы данных или всех баз данных в экземпляре. |
| managed_backup.fn_is_master_switch_on (Transact-SQL) | Возвращает состояние основного переключателя. |
| managed_backup.sp_get_backup_diagnostics (Transact-SQL) | Возвращает события, записанные в журнал подсистемой расширенных событий. |
| managed_backup.fn_get_parameter (Transact-SQL) | Возвращает текущие значения системных параметров резервного копирования, например параметры мониторинга и почтовые параметры для оповещений. |
| managed_backup.fn_available_backups (Transact-SQL) | Извлекает доступные резервные копии заданной базы данных или всех баз данных в экземпляре. |
| managed_backup.fn_get_current_xevent_settings (Transact-SQL) | Возвращает текущие параметры расширенных событий. |
| managed_backup.fn_get_health_status (Transact-SQL) | Возвращает объединенное число ошибок, зарегистрированных подсистемой расширенных событий за указанный период. |
Стратегия резервного копирования
Расписание резервного копирования
Можно указать пользовательское расписание резервного копирования с помощью системной хранимой процедуры managed_backup.sp_backup_config_schedule (Transact-SQL). Если не указать пользовательское расписание, тип запланированных резервных копий и частота резервного копирования определяются на основе рабочей нагрузки в базе данных. Настройки срока хранения определяют длительность хранения файлов резервных копий в хранилище и для восстановления базы данных на момент времени в течение срока хранения.
Соглашения об именовании файлов резервных копий
Управляемое резервное копирование SQL Server в Microsoft Azure использует указанный контейнер. Таким образом, вы можете выбрать имя контейнера. Имя файла резервной копии для баз данных, не являющихся базами данных доступности, задается в соответствии со следующим соглашением: Имя создается с помощью первых 40 символов имени базы данных, идентификатора GUID базы данных без "-" и отметки времени. Между сегментами в качестве разделителей вставляется подчеркивание. Для полной резервной копии используется расширение BAK , а для резервной копии журналов — LOG . Для баз данных группы доступности в дополнении к схеме именования, описанной выше, после 40 символов имени базы данных добавляется GUID группы доступности. Значение GUID базы данных группы доступности — это значение для group_database_id в sys.databases.
Полная резервная копия базы данных
Управляемое резервное копирование SQL Server в Microsoft Azure планирует полную резервную копию базы данных, если выполняется одно из следующих условий.
Функция Управляемое резервное копирование SQL Server в Microsoft Azure включается для базы данных впервые, или функция Управляемое резервное копирование SQL Server в Microsoft Azure активируется с параметрами по умолчанию на уровне экземпляра.
Увеличение журнала после создания полной резервной копии не меньше 1 ГБ.
Максимальный интервал времени (1 неделя) прошел с момента последнего полного резервного копирования.
Цепочка журналов прервана. Управляемое резервное копирование SQL Server в Microsoft Azure периодически проверяет, сохранилась ли цепочка журналов, сравнивая первый и последний номера LSN файлов резервной копии. Если по какой-то причине цепочка журналов прервана, Управляемое резервное копирование SQL Server в Microsoft Azure планирует полное резервное копирование базы данных. Самая распространенная причина разрыва цепочки журналов — выполнение команды резервного копирования с помощью Transact-SQL или задачи резервного копирования в SQL Server Management Studio. К другим возможным причинам относится случайное удаление фалов журнала резервного копирования или случайная перезапись резервных копий.
Резервная копия журналов транзакций
Управляемое резервное копирование SQL Server в Microsoft Azure планирует резервную копию журналов, если выполняется одно из следующих условий.
Не удается обнаружить историю резервного копирования журналов. Это условие обычно выполняется, если Управляемое резервное копирование SQL Server в Microsoft Azure включается впервые.
Используемый объем журнала транзакций равен 5 МБ или больше.
Достигнут максимальный интервал времени (2 часа) с момента создания последней резервной копии журналов.
Каждый раз, когда резервная копия журнала транзакций отстает от полной резервной копии базы данных, целью является сохранение цепочки журналов до полной резервной копии.
Параметры срока хранения
При включении резервного копирования необходимо задать срок хранения в днях: минимальное значение — 1 день, максимальное — 30 дней.
Управляемое резервное копирование SQL Server в Microsoft Azure оценивает возможность восстановления базы данных на момент времени в течение заданного периода, чтобы определить, какие файлы резервной копии необходимо сохранить, а какие — удалить. Параметр backup_finish_date резервной копии используется для определения и сопоставления времени, заданного настройками срока хранения.
Важные соображения
Если для базы данных выполняется текущее задание полного резервного копирования базы данных, Управляемое резервное копирование SQL Server в Microsoft Azure ожидает завершения текущего задания до перехода к следующему заданию полного резервного копирования этой же базы данных. Аналогичным образом в заданный момент времени может выполняться только одно задание резервного копирования журнала транзакций. Однако операции полного резервного копирования базы данных и резервного копирования журнала транзакций могут выполняться одновременно. Ошибки записываются в журнал как расширенные события.
Если запланировано больше 10 параллельных операций полного резервного копирования базы данных, через канал отладки расширенных событий передается предупреждение. Управляемое резервное копирование SQL Server в Microsoft Azure хранит очередь приоритетов для оставшихся баз данных, для которых нужно создать резервные копии, пока все операции резервного копирования не будут запланированы и завершены.
Примечание
Управляемое резервное копирование SQL Server не поддерживается для прокси-серверов.
Возможности поддержки
Ниже приведены ограничения и рекомендации, связанные SQL Server 2019 (15.x).
Поддерживается резервное копирование системных баз данных master, modelи msdb . Резервное копирование tempdb не поддерживается.
SQL Server 2019 (15.x)поддерживает все модели восстановления (модель полного восстановления, модель восстановления с неполным протоколированием и простую модель восстановления).
Управляемое резервное копирование SQL Server в Microsoft Azure поддерживает только полные резервные копии базы данных и резервные копии журналов. Автоматическое резервное копирование файлов не поддерживается.
Хранилище BLOB-объектов Microsoft Azure — единственное поддерживаемое хранилище резервных копий. Резервные копии на диски или ленточные накопители не поддерживаются.
Управляемое резервное копирование SQL Server в Microsoft Azure использует функцию резервного копирования в блочные BLOB-объекты. Максимальный размер блочного BLOB-объекта составляет 200 ГБ. За счет чередования максимальный размер отдельной резервной копии можно увеличить до 12 ТБ. Если вам нужен больший размер, рекомендуется использовать сжатие и проверить размер файла резервной копии до настройки Управляемое резервное копирование SQL Server в Microsoft Azure. Проверку можно выполнить, создав резервную копию на локальном диске или создав ее вручную в службе хранилища Microsoft Azure с использованием инструкции Transact-SQL BACKUP TO URL . Дополнительные сведения см. в разделе SQL Server Backup to URL.
Управляемое резервное копирование SQL Server в Microsoft Azure может накладывать определенные ограничения, если она настроена с другими технологиями, поддерживающими резервное копирование, высокий уровень доступности и аварийное восстановление.
См. также:
- Включение управляемого резервного копирования SQL Server в Microsoft Azure
- Настройка дополнительных параметров управляемого резервного копирования SQL Server в Microsoft Azure
- Отключение управляемого резервного копирования SQL Server в Microsoft Azure
- Резервное копирование и восстановление системных баз данных
- Резервное копирование и восстановление баз данных SQL Server