Настройка доставки журналов для SQL Server на виртуальных машинах Azure

Применимо к:SQL Server на виртуальной машине Azure

В этой статье описано, как настроить доставку журналов между двумя SQL Server в Azure Виртуальные машины (виртуальные машины).

Обзор

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

Доставка журналов в основном используется в качестве решения аварийного восстановления и может сочетаться с другими параметрами высокого уровня доступности и аварийного восстановления, включая группы доступности AlwaysOn.

Необходимые компоненты

Чтобы настроить доставку журналов для SQL Server на виртуальных машинах Azure, необходимо иметь следующие предварительные требования:

  • По крайней мере две виртуальные машины Azure, присоединенные к домену , с SQL Server в той же группе ресурсов, что и учетная запись хранения Azure для резервного копирования журналов транзакций. Сервер-получатель должен находиться в той же или более поздней версии SQL Server, что и основной SQL Server.

  • База данных-источник должна использовать полную или массовую модель восстановления. Доставка журналов перестает работать, если база данных-источник переключится на простую модель восстановления.

  • Учетная запись, настраивающая доставку журналов, должна быть членом предопределенных ролей сервера sysadmin .

Create a File Share in Azure File storage (Создание файлового ресурса в хранилище файлов Azure)

Резервные копии журналов транзакций с сервера-источника хранятся в общей папке. Перед настройкой доставки журналов необходимо создать общую папку Azure в учетной записи хранения Azure, доступ к которым можно получить как на первичных, так и на вторичных серверах.

Чтобы создать общую папку Azure в портал Azure, выполните следующие действия.

  1. Перейдите в группу ресурсов в портал Azure и выберите учетную запись хранения, которую вы планируете использовать для резервного копирования журналов транзакций.

  2. В разделе "Данные служба хранилища" выберите "Общие папки", а затем нажмите кнопку +Файловый ресурс, чтобы создать новую общую папку.

    Screenshot of the File share creation option in the Azure portal.

  3. На вкладке "Основные сведения" укажите имя общей папки, например доставку журналов. Уровень можно оставить по умолчанию оптимизированным для транзакций.

  4. (Необязательно) На вкладке "Резервное копирование" используйте проверка box, чтобы включить резервные копии общей папки в Azure Backup.

  5. Выберите "Просмотр и создание ", чтобы просмотреть параметры общей папки, а затем нажмите кнопку "Создать ", чтобы создать новую общую папку.

Создание каталогов резервных копий

После создания общей папки необходимо создать следующие два каталога:

  • Каталог для основного объекта для записи резервных копий журналов в
  • Каталог для вторичного копирования и восстановления резервной копии журнала

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

  1. После создания общей папки Azure портал возвращается на страницу обзора для нового файла S МБ.

  2. В разделе "Обзор" выберите + Добавить каталог. Укажите имя нового каталога, например резервные копии журналов. Нажмите ОК.

    Screenshot of the add directory creation option in the Azure portal.

  3. Повторите предыдущий шаг, чтобы добавить второй каталог, например резервные копии восстановления. Нажмите ОК.

Подключение виртуальных машин в общую папку

После создания каталогов подключите виртуальные машины к общей папке.

Чтобы определить сведения о подключении, выберите Подключение на странице обзора или обзора общей папки, чтобы открыть окно Подключение.

Screenshot of the Connect option for the file share in the Azure portal.

В окне Подключение предоставляется скрипт, позволяющий ресурсу получить доступ к общей папке. При необходимости измените букву диска, чтобы подключить общую папку к виртуальной машине. В этом руководстве используется ключ учетной записи хранения для виртуальной машины Windows.

Выберите " Показать сценарий", чтобы просмотреть скрипт , скопировать его и запустить его на каждой виртуальной машине SQL Server, в которой планируется настроить доставку журналов.

После выполнения скрипта Подключение можно использовать следующий командлет PowerShell для проверки подключения к порту 445:

Test-NetConnection -ComputerName yourstorageaccount.file.core.windows.net -Port 445

Если тест подключения выполнен успешно, вы увидите выходные данные TcpTestSucceeded : True.

Предоставление sql Server доступа к общей папке

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

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

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

  1. Подключение на виртуальную машину SQL Server с учетной записью, которая входит в роль sysadmin.

  2. Откройте SQL Server Management Studio (SSMS) и подключитесь к экземпляру SQL Server.

  3. Откройте новое окно запроса и запустите следующий код Transact-SQL, содержащий сведения о ключе хранилища, полученные из портал Azure:

    EXEC sp_configure 'show advanced options', 1;
    RECONFIGURE;
    exec sp_configure 'xp_cmdshell', 1;
    RECONFIGURE;
    GO
    EXEC xp_cmdshell 'cmdkey /add:"yourstorageaccount.file.core.windows.net" /user:"localhost\yourstorageaccount" /pass:"<yourpasskey>"';
    GO
    EXEC sp_configure 'xp_cmdshell', 0;
    RECONFIGURE;
    GO
    

    После выполнения команды SSMS подтверждает, что учетные данные добавлены успешно:

    Screenshot of the confirmation the credential was successfully created in SSMS.

Настройка доставки журналов

После того как экземпляры SQL Server смогут получить доступ к общей папке, используйте SQL Server Management Studio (SSMS) для настройки доставки журналов.

Чтобы настроить доставку журналов, выполните следующие действия.

  1. Подключение к основному экземпляру SQL Server.

  2. Щелкните правой кнопкой мыши базу данных, которую вы хотите использовать в качестве базы данных-источника в конфигурации доставки журналов, а затем выберите "Свойства".

  3. В разделе "Выбор страницы" выберите "Доставка журналов транзакций".

  4. Установите флажок " Включить эту базу данных в качестве базы данных-источника" в конфигурации доставки журналов.

  5. В разделе резервных копий журнала транзакций выберите "Резервное копирование" Параметры.

  6. В поле "Сетевой путь к папке резервного копирования" введите сетевой путь к общей папке и каталогу, созданному для папки резервного копирования журнала транзакций.

    Например: \\yourstorageaccount.file.core.windows.net\log-shipping\log-backups

  7. Настройте файлы удаления, чем и оповещение, если резервное копирование не выполняется в параметрах в соответствии с вашими бизнес-потребностями.

    1. Обратите внимание на расписание в поле Расписание в разделе Задание резервного копирования. Если вы хотите настроить расписание установки, выберите "Расписание" и настройте агент SQL Server расписание по мере необходимости.

    2. SQL Server поддерживает сжатие резервных копий. При создании конфигурации доставки журналов можно управлять поведением сжатия резервных копий журналов, выбрав один из следующих параметров: Использовать параметр сервера по умолчанию, Сжимать резервные копииили Не сжимать резервные копии. Дополнительные сведения см. в статье Log Shipping Transaction Log Backup Settings.

    3. Нажмите ОК, чтобы сохранить параметры.

  8. В разделе экземпляры и базы данных сервера-получатели нажмите кнопку "Добавить".

  9. Используйте Подключение для подключения к экземпляру SQL Server, который вы хотите использовать в качестве сервера-получателя.

    1. В поле База данных-получатель выберите базу данных из списка или введите имя базы данных, которую нужно создать.

    2. На вкладке Инициализация базы данных-получателя выберите параметр, который нужно использовать для инициализации базы данных-получателя.

    Примечание.

    Если вы решили инициализировать базу данных-получатель из резервной копии базы данных-получателя, данные и файлы журналов базы данных-получателя помещаются в то же расположение, что и файлы данных и журналов master базы данных. Это расположение, вероятно, будет отличаться от расположения файлов данных и файлов журнала базы данных-источника.

  10. На вкладке "Копировать файлы" в папке назначения для скопированных файлов введите путь к папке, в которой требуется скопировать резервные копии журналов транзакций, например каталог резервных копий восстановления, созданный для общей папки:

    \\yourstorageaccount.file.core.windows.net\log-shipping\restore-backups

    1. Обратите внимание на расписание копирования в поле Расписание в разделе Задание копирования. Если вы хотите настроить расписание установки, выберите "Расписание", а затем настройте расписание агент SQL Server по мере необходимости. Это расписание должно быть максимально приближено к расписанию резервного копирования.
  11. На вкладке Восстановление журнала транзакций в разделе Состояние базы данных во время восстановления резервных копийвыберите пункт Без режима восстановления или Режим ожидания .

    Внимание

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

    1. Если выбрать режим ожидания, выберите, следует ли отключить пользователей от базы данных-получателя во время выполнения операции восстановления.

    2. Если нужно отложить процесс восстановления на сервере-получателе, укажите время задержки в поле Отложить восстановление резервных копий по крайней мере на.

    3. Выберите пороговое значение для предупреждения в поле Предупреждение, если восстановление не выполнено в течение.

    4. Обратите внимание на расписание восстановления в поле Расписание раздела Задание восстановления. Если вы хотите настроить расписание установки, выберите "Расписание", а затем настройте расписание агент SQL Server по мере необходимости. Это расписание должно быть максимально приближено к расписанию резервного копирования.

    5. Нажмите ОК, чтобы сохранить параметры.

  12. (Необязательно) В разделе "Мониторинг экземпляра сервера" выберите поле "Использовать экземпляр сервера монитора" проверка, а затем выберите Параметры.

    Внимание

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

    1. Используйте Подключение для подключения к экземпляру SQL Server, который вы хотите использовать в качестве сервера мониторинга.

    2. В разделе Соединения с сервером мониторингавыберите метод подключения, который используется заданиями резервного копирования, обычного копирования и восстановления для соединения с сервером мониторинга.

    3. В разделе Хранение журналавыберите отрезок времени, в течение которого нужно хранить записи об отправке журналов.

    4. Нажмите ОК, чтобы сохранить параметры.

  13. В диалоговом окне "Свойства базы данных" используйте "ОК", чтобы начать процесс настройки.