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


Свидетель зеркального отображения базы данных

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

Замечание

В режиме высокой производительности свидетель может негативно повлиять на доступность. Если свидетель настроен для сеанса зеркального отображения базы данных, основной сервер должен быть подключен по крайней мере к одному из других экземпляров сервера, зеркального сервера или следящего сервера или обоих из них. В противном случае база данных становится недоступной и осуществление принудительного обслуживания (с возможной потерей данных) невозможно. Поэтому для режима высокой производительности мы настоятельно советуем всегда держать значение свидетеля установлено в положение OFF. Сведения о влиянии свидетель на режим высокой производительности см. раздел "Режимы работы зеркального отображения базы данных".

На следующем рисунке показан сеанс с высоким уровнем безопасности с свидетелем.

Mirroring session with a witnessСеанс зеркального отображения с свидетелем

В этом разделе:

Использование следящего сервера в нескольких сеансах

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

Экземпляр сервера, который является свидетелем для 2 баз данных

Экземпляр с одним сервером также может работать одновременно с свидетелем в некоторых сеансах и партнером в других сеансах. Однако на практике экземпляр сервера обычно выполняет роль свидетеля или партнера. Это связано с тем, что партнёрам требуются высокотехнологичные компьютеры, имеющие достаточно аппаратного обеспечения для поддержки рабочей базы данных, в то время как свидетель может работать на любой доступной системе Windows, поддерживающей SQL Server 2014.

Рекомендации по программному обеспечению и оборудованию

Настоятельно рекомендуется, чтобы свидетель находился на отдельном компьютере от партнеров. Партнеры зеркального отображения баз данных поддерживаются только выпуском SQL Server Standard и выпуском SQL Server Enterprise. Свидетели, напротив, также поддерживаются рабочей группой SQL Server и SQL Server Express. За исключением ситуации обновления с более ранней версии SQL Server, все экземпляры сервера в сеансе зеркалирования должны работать с той же версией SQL Server. Например, следящий сервер SQL Server 2008 поддерживается при обновлении конфигурации зеркального отображения SQL Server 2008, но его нельзя добавить в существующую или новую конфигурацию зеркального отображения SQL Server 2008 R2 или более поздней версии.

Свидетель может работать на любой надежной компьютерной системе, поддерживающей любой из этих выпусков SQL Server. Однако рекомендуется, чтобы каждый экземпляр сервера, используемый в качестве следящего сервера, соответствовал минимальной конфигурации, необходимой для запущенной версии SQL Server Standard. Дополнительные сведения об этих требованиях см. в разделе "Требования к оборудованию и программному обеспечению" для установки SQL Server 2014.

Роль свидетеля в автоматическом переключении

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

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

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

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

Требование подключения по крайней мере двух экземпляров сервера называется кворумом. Кворум гарантирует, что база данных может обслуживаться только одним партнером одновременно. Сведения о том, как работает кворум и его влияние на сеанс, см. в разделе кворум: как свидетель влияет на доступность базы данных (зеркальное отображение базы данных).

Добавление или удаление свидетеля

Добавление свидетеля

Удалить свидетеля

См. также

Переключение ролей во время сеанса зеркального отображения базы данных (SQL Server)
Режимы работы зеркального отображения базы данных
Кворум: как свидетель влияет на доступность базы данных (зеркальное отображение базы данных)
Возможные сбои во время зеркального отображения базы данных
Состояния зеркального отображения (SQL Server)