Снижение времени простоя зеркальных баз данных при обновлении экземпляров сервера
Во время обновления экземпляров сервера с версии SQL Server 2005 или SQL Server 2008 до версии SQL Server 2012 можно сократить время простоя для каждой зеркальной базы данных, выполнив вручную только одну отработку отказа. Для этого применяется метод обновления, который называется последовательное обновление. Последовательное обновление является многоэтапным процессом, который в самом простом случае заключается в обновлении экземпляра сервера, который выступает в роли зеркального сервера в сеансе зеркального отображения, и последующего перехода на зеркальную базу данных вручную, обновления сервера, бывшего основным, и возобновления зеркального отображения. Набор операций, фактически применяемый на практике, будет зависеть от режима работы, а также от количества и структуры сеансов зеркального отображения, активных в обновляемых экземплярах сервера.
Примечание |
---|
Дополнительные сведения о последовательном обновлении при установке пакета обновлений или исправлений см. в разделе Установка пакета обновления на систему с минимальным временем простоя для зеркально отображаемых баз данных. |
Рекомендуемые подготовительные действия (рекомендации)
Перед запуском последовательного обновления рекомендуется выполнить следующие действия.
Выполните пробную отработку отказа вручную по крайней мере в одном из сеансов зеркального отображения:
Переключение сеанса зеркального отображения базы данных на другой ресурс вручную (язык Transact-SQL).
Примечание Дополнительные сведения об отработке отказа вручную см. в разделе Переключение ролей во время сеанса зеркального отображения базы данных (SQL Server).
Обеспечьте защиту данных.
Создайте полную резервную копию каждой основной базы данных.
Выполните команду DBCC CHECKDB в каждой основной базе данных.
Этапы последовательного обновления
Конкретная последовательность действий в ходе последовательного обновления зависит от режима работы конфигурации зеркального отображения. Однако основные этапы остаются одинаковыми.
Примечание |
---|
Сведения о режимах работы см. в разделе Режимы работы зеркального отображения базы данных. |
Блок-схема на следующем рисунке показывает основные этапы последовательного обновления для каждого режима работы. После рисунка описаны соответствующие процедуры.
Важно! |
---|
Экземпляр сервера может одновременно исполнять различные роли зеркального отображения (основной сервер, зеркальный сервер или следящий сервер) в параллельных сеансах зеркального отображения. В этом случае придется соответствующим образом адаптировать процесс последовательного обновления. Дополнительные сведения см. в разделе Переключение ролей во время сеанса зеркального отображения базы данных (SQL Server). |
Изменение режима сеанса с высокопроизводительного на режим высокой безопасности
Если сеанс зеркального отображения выполняется в высокопроизводительном режиме, перед выполнением последовательного обновления измените его на режим высокой безопасности без автоматической отработки отказа.
Важно! Если зеркальный сервер географически удален от основного, то последовательное обновление может оказаться неподходящим вариантом.
На языке Среда SQL Server Management Studio. Измените параметр Режим работы на Высокая безопасность без автоматической отработки отказа (синхронный) с помощью страницы Зеркальное отображение диалогового окна Свойства базы данных. Дополнительные сведения о доступе к этой странице см. в разделе Запуск мастера настройки безопасности зеркального отображения баз данных (среда SQL Server Management Studio).
На языке Transact-SQL. Установите безопасность транзакций в значение FULL. Дополнительные сведения см. в разделе Изменение безопасности транзакций в сеансах зеркального отображения базы данных (Transact-SQL).
Удаление следящего сервера из сеанса
Если сеанс зеркального отображения включает следящий сервер, рекомендуется удалить его перед выполнением последовательного обновления. В противном случае при обновлении экземпляра зеркального сервера доступность базы данных будет зависеть от следящего сервера, остающегося подключенным к экземпляру основного сервера. После удаления следящего сервера его можно обновить в любой момент во время последовательного обновления, без дополнительного простоя базы данных.
Примечание Дополнительные сведения см. в разделе Кворум. Как следящий сервер влияет на доступность базы данных (зеркальное отображение базы данных).
Выполнение последовательного обновления
Чтобы свести к минимуму время простоя, необходимо выполнить следующие рекомендации. Начните пошаговое обновление с обновления участника зеркального отображения, который в настоящий момент является зеркальным сервером во всех сеансах зеркального отображения. На этом этапе, возможно, придется обновить несколько экземпляров сервера.
Примечание Следящий сервер можно обновить в любой момент пошагового обновления. Например, если экземпляр сервера является зеркальным сервером в сеансе 1 и следящим сервером в сеансе 2, этот сервер можно обновить сразу.
Экземпляр сервера, который следует обновлять в первую очередь, зависит от текущей конфигурации сеансов зеркального отображения следующим образом.
Если какой-либо экземпляр сервера уже является зеркальным сервером во всех сеансах зеркального отображения, обновите его до новой версии.
Если все экземпляры сервера в настоящий момент являются основным сервером в одном из сеансов зеркального отображения, выберите для обновления один экземпляр сервера. Затем вручную переведите на другой ресурс каждую из его основных баз данных и обновите экземпляр сервера.
После обновления экземпляр сервера автоматически подключится к сеансам зеркального отображения.
В каждом сеансе зеркального отображения, зеркальный сервер которого был обновлен, дождитесь окончания синхронизации сеанса. Затем подключитесь к экземпляру основного сервера и вручную переведите этот сеанс на другой ресурс. При отработки отказа обновленный сервер становится основным сервером для этого сеанса, а бывший основной сервер становится зеркальным.
Цель этого этапа — сделать другой экземпляр сервера зеркальным во всех сеансах зеркального отображения, в которых он участвует.
Ограничения, возникающие после перехода на обновленную отработку отказа сервера.
После перехода с экземпляра сервера SQL Server 2005 или SQL Server 2008 на экземпляр сервера SQL Server 2012 сеанс зеркального отображения базы данных приостанавливается. Его нельзя возобновить, пока не будет обновлен другой участник. Однако основной сервер принимает подключения и разрешает доступ и изменение данных в основной базе данных.
Примечание Для установки нового сеанса зеркального отображения требуется, чтобы на всех участниках работала одинаковая версия SQL Server.
После перехода на другой ресурс рекомендуется выполнить в основной базе данных команду DBCC CHECKDB.
Обновите каждый экземпляр сервера, который в настоящий момент является зеркальным сервером во всех сеансах зеркального отображения, в которых он участвует. На этом этапе, возможно, придется обновить несколько серверов.
Важно! В сложной конфигурации зеркального отображения некоторые экземпляры сервера могут все еще исполнять роль основного сервера в одном или нескольких сеансах зеркального отображения. Повторите шаги 2 — 4 для этих экземпляров серверов, пока не будут обновлены все вовлеченные в этот процесс экземпляры.
Возобновление сеанса зеркального отображения.
Примечание Автоматическая отработка отказа не будет работать, пока следящий сервер не будет обновлен и возвращен в сеанс зеркального отображения.
Обновите все оставшиеся экземпляры сервера, являющиеся следящими во всех сеансах зеркального отображения. После подключения обновленного следящего сервера к сеансу зеркального отображения становится возможным автоматическая отработка отказа. На этом этапе, возможно, придется обновить несколько серверов.
Возвращение сеанса в высокопроизводительный режим
При необходимости вернитесь в высокопроизводительный режим, используя один из следующих методов.
На языке Среда SQL Server Management Studio. Измените параметр Режим работы на Высокая производительность (асинхронный)) с помощью страницы Зеркальное отображение диалогового окна Свойства базы данных.
На языке Transact-SQL. С помощью команды ALTER DATABASE установите безопасность транзакций в значение OFF.
Возвращение следящего сервера в сеанс зеркального отображения
При необходимости, в режиме высокой безопасности подключите следящий сервер ко всем сеансам зеркального отображения.
Возврат следящего сервера
См. также
Задания
Просмотр состояния зеркального отображения базы данных (среда SQL Server Management Studio)
Принудительный запуск службы в сеансе зеркального отображения базы данных (Transact-SQL)
Запуск монитора зеркального отображения баз данных (среда SQL Server Management Studio)
Справочник
Зеркальное отображение базы данных ALTER DATABASE (Transact-SQL)
Основные понятия
Зеркальное отображение базы данных (SQL Server)
Переключение ролей во время сеанса зеркального отображения базы данных (SQL Server)