Предварительные условия, ограничения и рекомендации по зеркальному отображению базы данных
Область применения: SQL Server
Примечание.
Эта функция будет удалена в будущей версии SQL Server. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется. Вместо этого используйте группы доступности AlwaysOn.
Зеркальное отображение базы данных в SQL Server — это отдельная технология зеркального отображения базы данных Microsoft Fabric.
В этом разделе описываются предварительные условия и рекомендации по настройке зеркального отображения базы данных. Базовые сведения о зеркальном отображении базы данных см. в разделе Зеркальное отображение базы данных (SQL Server).
Поддержка зеркального отображения базы данных
Список функций, поддерживаемых выпусками SQL Server в Windows, см. в следующих статье:
- Выпуски и поддерживаемые функции SQL Server 2022
- Выпуски и поддерживаемые функции SQL Server 2019
- Выпуски SQL Server 2017 и поддерживаемые функции
- Выпуски и поддерживаемые функции SQL Server 2016
Имейте в виду, что зеркальное отображение базы данных работает при любом поддерживаемом уровне совместимости базы данных. Сведения о поддерживаемых уровнях совместимости см. в статье Уровень совместимости ALTER DATABASE (Transact-SQL).
Необходимые компоненты
Чтобы создать сеанс зеркального отображения, у участников и следящего сервера (если он есть) должна быть установлена одна и та же версия SQL Server.
На обоих участниках — как на основном, так и на зеркальном сервере — должен работать один и тот же выпуск SQL Server. На следящем сервере (если он есть) может работать любой выпуск SQL Server, поддерживающий зеркальное отображение базы данных.
Примечание.
Экземпляры сервера, которые являются участниками сеанса зеркального отображения, можно обновить до более новой версии SQL Server. Дополнительные сведения см. в статье Upgrading Mirrored Instances.
База данных должна использовать модель полного восстановления. Простая модель восстановления и модель восстановления с неполным протоколированием не поддерживают зеркальное отображение базы данных. Таким образом, массовые операции для зеркальной базы данных всегда полностью протоколируются. Дополнительные сведения о моделях восстановления см. в статье Модели восстановления (SQL Server).
Убедитесь, что у зеркального сервера достаточно места на диске для зеркальной базы данных.
Примечание.
Дополнительные сведения об использовании зеркального отображения базы данных на реплицируемой базе данных см. в статье Зеркальное отображение и репликация баз данных (SQL Server).
При создании зеркальной базы данных на зеркальном сервере убедитесь, что резервная копия основной базы данных восстановлена, указав имя базы данных в предложении WITH NORECOVERY. Кроме того, все резервные копии журналов, созданные после резервного копирования этой базы данных, также должны быть восстановлены с использованием предложения WITH NORECOVERY.
Внимание
Если зеркальное отображение базы данных было остановлено, то перед тем как заново запустить его, необходимо применить к зеркальной базе данных все последующие резервные копии журналов основной базы данных.
Ограничения
Зеркальное отображение возможно только для пользовательских баз данных. Нельзя осуществлять зеркальное отображение баз данных master, msdb, tempdbили model .
Зеркальные базы данных нельзя переименовывать во время сеанса зеркального отображения.
Зеркальное отображение базы данных не поддерживает FILESTREAM. Создание файловой группы FILESTREAM на основном сервере невозможно. Настройка зеркального отображения для базы данных, содержащей файловые группы FILESTREAM, невозможна.
Зеркальное отображение базы данных не поддерживается с межбазовыми или с распределенными транзакциями. Дополнительные сведения см. в статье Транзакции — группы доступности Always On и зеркальное отображение баз данных.
Рекомендации по настройке серверов-участников
Участники должны выполняться на сопоставимых системах, которые могут обрабатывать одинаковые рабочие нагрузки.
Примечание.
Если планируется использовать режим высокого уровня безопасности с автоматической отработкой отказа, каждый партнер по обеспечению отработки отказа должен использовать менее 50 процентов ЦП. Если рабочая нагрузка перегружает ЦП, партнер по обеспечению отработки отказа может оказаться неспособным выполнить команду ping для другого экземпляра сервера в сеансе зеркального отображения. Это приводит к излишним отработкам отказа. Если не удается избежать загрузки процессора более чем на 50 процентов, то рекомендуется использовать либо режим высокой безопасности без автоматической отработки отказа, либо режим высокой производительности.
Желательно, чтобы путь зеркальной базы данных (включая имя диска) был идентичен пути основной базы данных. Если размещение файлов различается для разных баз данных, необходимо включить в инструкцию RESTORE параметр MOVE. Например, если основная база данных расположена на диске «F:», а в зеркальной системе нет диска «F:».
Внимание
Если во время создания зеркального отображения базы данных файлы базы данных перемещаются, в дальнейшем добавление файлов в базу данных без приостановки зеркального отображения может быть невозможным.
В сеансе зеркального отображения все экземпляры сервера должны использовать одну и ту же основную кодовую страницу и параметры сортировки. Отличия могут вызвать проблемы при настройке зеркального отображения.
Если требуется, можно оценить время на переключение базы данных, чтобы убедиться в том, что конфигурация системы позволяет достичь нужной производительности. Дополнительные сведения см. в статье Оценка прерывания обслуживания во время переключения ролей (зеркальное отображение базы данных).
Для максимальной производительности используйте для зеркального отображения выделенный сетевой адаптер.
Мы не даем никаких рекомендаций по поводу того, достаточно ли надежна глобальная сеть (WAN) для зеркального отображения базы данных в режиме высокой безопасности. Если режим высокой безопасности используется в глобальной сети, добавлять следящий сервер в сеанс следует осторожно, чтобы не произошла ненужная автоматическая отработка отказа. Дополнительные сведения см. в подразделе Рекомендации по развертыванию зеркального отображения базы данныхдалее в этом разделе.
Рекомендации по развертыванию зеркального отображения базы данных
Оптимальная производительность зеркального отображения базы данных достигается при помощи асинхронного режима. В сеансе зеркального отображения, который работает в синхронном режиме, наблюдается меньшая производительность, если рабочая нагрузка формирует большое количество данных журнала транзакций.
В тестовой среде полезно изучить все режимы работы, чтобы оценить, как выполняется зеркальное отображение базы данных. Но прежде чем развертывать зеркальное отображение в рабочей среде, важно понять, как реально функционирует сеть.
Режим высокого уровня безопасности с автоматической отработкой отказа разработан для сети высокого уровня обслуживания, которая имеет либо выделенное соединение, либо довольно простую конфигурацию, которая сводит к минимуму возможные источники сбоя сети. Такая сетевая среда высокого качества является критически необходимой для режима высокой безопасности с автоматической отработкой отказа и рекомендуется для всех сеансов зеркального отображения базы данных. Высокопроизводительный режим и режим высокого уровня безопасности без автоматической отработки отказа на другой ресурс меньше зависят от надежности сети.
Поэтому для рабочей среды рекомендуется следовать следующим правилам развертывания.
Начните работу в асинхронном режиме высокой производительности. Этот режим наименее чувствителен к сетевой среде и обеспечивает наилучшую конфигурацию для изучения того, как работает зеркальное отображение. Рекомендуется запускать систему в асинхронном режиме до тех пор, пока вы не убедитесь, что пропускная способность сети поддерживает зеркальное отображение, и не поймете настройки зеркального отображения и работы в асинхронном режиме в вашей среде. Дополнительные сведения см. в статье Database Mirroring Operating Modes.
Внимание
В процессе тестирования рекомендуется следить за сетевыми ошибками в сеансах, которые могут вызвать сбой во время зеркального отображения базы данных. Дополнительные сведения о возможных источниках сбоев см. в разделе Possible Failures During Database Mirroring. Дополнительные сведения об отслеживании зеркального отображения базы данных см. в статье Наблюдение за зеркальным отображением базы данных (SQL Server).
Если вы уверены, что функционирование в асинхронном режиме удовлетворяет рабочим требованиям, можно опробовать работу в синхронном режиме, чтобы улучшить защиту данных. При тестировании синхронного режима зеркального отображения в среде рекомендуется в первую очередь протестировать режим высокого уровня безопасности без автоматической отработки отказа на другой ресурс. Главная цель тестирования — увидеть, как синхронный режим влияет на производительность базы данных. Дополнительные сведения см. в статье Database Mirroring Operating Modes.
Не торопитесь включать автоматическую отработку отказа до тех пор, пока не убедитесь, что режим высокого уровня безопасности без автоматической отработки отказа удовлетворяет требованиям вашего предприятия и сетевые ошибки не вызывают сбои. Дополнительные сведения см. в статье Переключение ролей во время сеанса зеркального отображения базы данных (SQL Server).
См. также
Настройка зеркального отображения базы данных (SQL Server)
Безопасность транспорта для зеркального отображения баз данных и групп доступности AlwaysOn (SQL Server)
Зеркальное отображение базы данных (SQL Server)
Диагностика конфигурации зеркального отображения базы данных (SQL Server)