Восстановление из резервных копий, хранящихся в Azure
В этом разделе представлены вопросы восстановления базы данных с помощью резервной копии в службе хранилища BLOB-объектов Azure. Это относится к резервным копиям, созданным либо с помощью резервного копирования SQL Server на URL-адрес, либо с помощью служб Управляемое резервное копирование SQL Server в Microsoft Azure.
Рекомендуется ознакомиться с этим разделом, если у вас есть резервные копии в службе хранилища BLOB-объектов Azure, которые планируется восстановить. После этого изучите разделы, в которых описана процедура восстановления базы данных. Она аналогична для локальных резервных копий и резервных копий в Azure.
Обзор
Средства и методы, используемые для восстановления базы данных из локальной резервной копии, применимы для восстановления базы данных из облака. Далее рассматриваются эти вопросы, а также различия, которые нужно учитывать при использовании резервных копий в службе хранилища BLOB-объектов Azure.
Использование Transact-SQL
Так как SQL Server должен подключиться к внешнему источнику данных для получения файлов резервных копий, для проверки подлинности учетной записи хранения используются учетные данные SQL. Соответственно, в инструкции RESTORE необходимо указать параметр WITH CREDENTIAL. Дополнительные сведения см. в статье Резервное копирование и восстановление SQL Server с помощью службы хранилищ больших двоичных объектов Windows Azure.
Если вы используете Управляемое резервное копирование SQL Server в Microsoft Azure для управления вашими резервными копиями в облаке, можно просматривать все доступные резервные копии в хранилище с помощью функции smart_admin.fn_available_backups . Эта функция возвращает все доступные резервные копии для базы данных в таблице. Поскольку результаты возвращаются в виде таблицы, их можно фильтровать и сортировать. Дополнительные сведения см. в разделе smart_admin.fn_available_backups (Transact-SQL).
Использование среды SQL Server Management Studio
- Для восстановления базы данных из SQL Server Management Studio используется задача восстановления. На странице носителя резервных копий теперь доступен параметр URL-адрес для отображения файлов резервных копий, размещенных в службе хранилища BLOB-объектов Azure. Также необходимо указать учетные данные SQL, которые используются для проверки подлинности учетной записи хранения. После этого сетка Восстанавливаемые резервные наборы данных заполняется всеми резервными копиями, доступными в хранилище BLOB-объектов Azure. Дополнительные сведения см. в разделе Восстановление из хранилища SQL Azure с помощью среды SQL Server Management Studio.
Оптимизация восстановления
Чтобы снизить время восстановления, добавьте учетной записи пользователя SQL Server право Выполнение задач по обслуживанию томов . Дополнительные сведения см. в разделе Инициализация файлов базы данных. Если при включенной быстрой инициализации файлов операция восстановления по-прежнему идет медленно, посмотрите размер файла журнала для экземпляра, где была создана резервная копия базы данных. Если размер журнала очень большой (несколько ГБ), то ожидается, что восстановление будет идти медленно. Во время восстановления файл журнала необходимо обнулить, что занимает значительное количество времени.
Для сокращения времени восстановления, рекомендуется использовать сжатые резервные копии. Для резервных копий, чей размер превышает 25 ГБ, используйте служебную программу AzCopy для загрузки на локальный привод и для последующего выполнения восстановления. За дополнительными рекомендациями относительно резервных копий, обратитесь к SQL Server Backup to URL Best Practices and Troubleshooting.
Также при выполнении восстановления можно включить флаг трассировки 3051, что приведет к формированию подробного журнала. Этот файл журнала помещается в каталог журнала и называется в формате BackupToUrl-instancename-dbname-action-PID.log<<>><>. В файле журнала сохраняются сведения о каждом круговом пути со службой хранилища Azure, включая время операции, что может быть полезно при диагностике проблемы.