Поделиться через


рекомендации по связыванию Управляемый экземпляр — Управляемый экземпляр SQL Azure

Область применения: Управляемый экземпляр SQL Azure

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

Регулярное создание резервных копий журналов

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

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

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

Вы можете использовать скрипт Transact-SQL (T-SQL) для резервного копирования файла журнала, например примера из этого раздела. Замените заполнители в примере скрипта именем своей базы данных, именем и путем для файла резервной копии и описанием.

Чтобы создать резервную копию журнала транзакций, воспользуйтесь следующим примером скрипта Transact-SQL (T-SQL) в SQL Server:

-- Execute on SQL Server
-- Take log backup
BACKUP LOG [<DatabaseName>]
TO DISK = N'<DiskPathandFileName>'
WITH NOFORMAT, NOINIT,
NAME = N'<Description>', SKIP, NOREWIND, NOUNLOAD, COMPRESSION, STATS = 1

Используйте следующую команду Transact-SQL (T-SQL), чтобы узнать, какой объем пространства занимает журнал вашей базы данных в SQL Server:

-- Execute on SQL Server
DBCC SQLPERF(LOGSPACE); 

Выходные данные запроса выглядят следующим образом для примера базы данных tpcc:

Снимок экрана: результаты команды с размером файла журнала и используемым пространством

В этом примере база данных использовала 76 % доступного журнала, при этом абсолютный размер файла журнала составляет приблизительно 27 ГБ (27971 МБ). Пороговые значения для действия зависят от рабочей нагрузки. В предыдущем примере размер журнала транзакций и процент использования журнала обычно является признаком того, что необходимо создать резервную копию журнала транзакций, чтобы усечь файл журнала и освободить место или создать более частые резервные копии журналов. Это также может быть признаком того, что усечение журнала транзакций блокируется открытыми транзакциями. Дополнительные сведения об устранении неполадок журнала транзакций в SQL Server см. в разделе Устранение неполадок, связанных с переполнением журнала транзакций (SQL Server ошибка 9002). Дополнительные сведения об устранении неполадок журнала транзакций в Управляемый экземпляр SQL Azure см. в статье "Устранение ошибок журнала транзакций с помощью Управляемый экземпляр SQL Azure".

Примечание.

При участии в ссылке автоматические резервные копии полного и журнала транзакций принимаются из Управляемый экземпляр SQL, является ли она основной репликой. Разностные резервные копии не принимаются, что может привести к более длительному времени восстановления.

Сопоставление емкости производительности между репликами

При использовании функции связи важно соответствовать емкости производительности между SQL Server и Управляемый экземпляр SQL, чтобы избежать проблем с производительностью, если вторичная реплика не сможет поддерживать репликацию из первичной реплики или после отработки отказа. Емкость производительности включает ядра ЦП (или виртуальные ядра в Azure), память и пропускную способность ввода-вывода.

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

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

Поворот сертификата

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

Используйте следующую команду Transact-SQL (T-SQL), чтобы проверить дату окончания срока действия текущего сертификата:

-- Run on SQL Server
USE MASTER
GO
SELECT * FROM sys.certificates WHERE pvt_key_encryption_type = 'MK' 

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

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

Добавление флагов трассировки запуска

В SQL Server есть два флага трассировки (-T1800 и -T9567) которые при добавлении в качестве параметров запуска могут оптимизировать производительность репликации данных через ссылку. Дополнительные сведения см. в разделе Включение флагов трассировки запуска.

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

Дополнительные сведения о ссылке:

Для других сценариев репликации и миграции рекомендуется: