Один из
способов сделать вашу базу данных более
доступной, а так же сохранить данные,
является технология зеркалирование
(Mirroring).
Данная
технология появилась в MS SQL
2005 версии и была продолжена в MS
SQL 2008, MS SQL2008R2, доступна в редакция
Standart и Enterprise,
в качестве свидетеля могут выступать
редакции Express и Workgroup.
Ниже описывается метод без свидетеля и в домене Windows, экземпляры MS SQL Server работают под доменной учетной записью.
Итак
вначале:
1.Необходимо
убедиться, что на основной базе данных
установлена модель восстановления
FULL, к примеру так:
select
name,recovery_model_desc
from
sys.databases
where
name='AdventureWorks2008R2'
AdventureWorks2008R2 FULL
2)Параметр «AuotClosed»БД должен быть установлен в «False» на обоих базах.
3)Учетная
запись должна запуска экземпляров
инстансов MS SQL должна
принадлежать домену. Настройка зеркального отображения при отсутсвие домена или при использование вне доменных учетныз записей описано на сайте Майкрософт http://msdn.microsoft.com/ru-ru/library/ms191477.aspx
4)Создать
полную резервную копию основной базы
данных, и восстановить с параметром
«with norecovery» на зеркальном
сервере, если пути расположения файлов
баз данных различны, то укажите новое
местоположение файлов.
Создать
резервную копию журнала транзакций и
её восстановить на бд зеркального
сервера, так же с параметром «with
norecovery»
После данных проверочных шагов, можно приступить к включению зеркалирования:
1)Выберите базу
данных для зеркалирования
в открывшемся
окне выберите «Настройка Безопасности
Configure Security»
В следующем окне
необходимо выбрать — использовать
сервер свидетель или нет,
Далее создаем
конечную точку для основного сервера
указываем порт
(по умолчанию 5022) и название конечной
точки
в следующем окне
указываем конечную точку для зеркального
сервера:В окне настройки учетных данных служб поля оставляем пустыми,и, наконец, «Finish»
После закрытия
окна , появится окно, хотите ли вы
запустить Зеркалирование по указанным
параметрам
Жмем «Start
Mirroring».Если все успешно, соединение
происходит между основным и зеркальным
сервером, то зеркалировани запуститься, впротивном случае необходимо изучить текст ошибки , просмотреть журналы ошибок.
После этого
можно выбрать тип зеркалирования:
В данном варианте
выбрано- Высокая производительность(Асинхронный
режим), т.е транзакция коммится на
основном сервере, посылает ответ
приложению об успешном окончание
запроса, и только после этого идет
транзакция на зеркальный сервер.В Standart Edition доступен только данный вид зеркалирования.
Нажимаем кнопку "OK"
Вот и все, зеркалирование(Mirroring) настроено.
Кстати, переключение между серверами возможно через команду:
alter database dbname set partner failover
Данная команда переключает роли между серверами, например когда вам надо провести работы с сервером.
Спасибо, за подробную инструкцию. Но с сертификатами все равно пришлось повозиться, т.к. севера были один в домене, а второй нет.
ОтветитьУдалитьто есть если оба сервера не в домене без сертификатов никак?
Удалитьто есть если оба сервера не в домене без сертификатов никак?
ОтветитьУдалитьда , нужны сертификаты, простой пример https://docs.microsoft.com/ru-ru/archive/blogs/suhde/step-by-step-guide-to-configure-database-mirroring-between-sql-server-instances-in-a-workgroup
Удалить