Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 mirroring для чайников  [new]
Guest который Дмитрий
Guest
Предлагаю для модеров поместить информацию о зеркалировании в факу или в топ.
Вопросы возникают часто насколько могу судить, а хорошего всеобъемлющего хелпа нет в одном месте.

Ниже затравка.

1. Самая главная проблема что при попытке установления зеркалирования сервер ругается на ошибку 1418. В независимости от того что на самом деле произошло. Проблема наблюдалась с самого начала появления данного функционала в 2005, не исправлена и в 2008 (если исправлена в SP 1, поправьте меня, у меня он не поставился из за каких то сбоев при начальной установке).

2. для того чтобы понять что происходит перво наперво нужно пробовать ставить на одной машине, чтобы обе инсталляции работали под одной учетной записью администратора и с отключенными фаерами, если заработает, уже хорошо, можете ехать дальше. Возможные проблемы в будущем две предполагаю: 1 - права, 2 - занятость портов, 3 - закрытость портов фаерами.

3. точно следовать инструкциям по установке (правильно установить режим на основной базе, и правильно восстанавливать на зеркале). В общем все делать по BOL. У меня к примеру полдня ушло на то чтобы разобраться что дело не в недоступности портов (пункт 1), а в неправильном состоянии базы зеркала после восстановления.

4. если не работает, сначала пробуем телнетом просмотреть получается ли подсоединиться к серверу на соотв. порты. У меня кстати с первого раза почему то не пошло. Пришлось несколько раз снести ендпойнты. Делается это Server Objects > End Points > Database Mirroring.
Полезно использовать еще netstat -abn. Можно посмотреть кто то слушает данные порты или нет.
Если там сидит то что нужно, то выглядит это так: TCP 192.168.1.2:5022 [sqlservr.exe], если нет, переходите на другой порт. Результат netstat выдает не сразу, нужно подождать минутку.

5. Если с портами все в порядке, но не работает, и все вышесказанное не помогает, пробуйте смотреть логи Сервера. (Мне это кстати не помогло, то что не запускается mirroring из за того что база в неправильном состоянии, никак не фигурировало).

Теперь несколько отвлеченная информация о самом механизме. У меня этот вопрос в свое время всплыл.
Если запускается режим с автоматическим переключением ролей (с witness), то база доступна только на одном из серверов, и только если в кворуме как минимум две точки.
Есть одна приятная фича. Если упал Principal, затем упал Mirror, а затем поднялся Principal (при лежащем Mirror), то база на Principal все равно будет в офлайне, до тех пор пока не заработает Mirror. Это гарантирует что транзакции которые могли быть совершены на Mirror пока лежал Principal не потеряются. Небольшая ложка дегтя. Данное ограничение работает даже в случае если никаких модификаций в базе за этот интервал времени не было. Может кто то знает, можно ли это как просто обойти?
16 май 09, 09:43    [7187990]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Девиченский Василий
Member

Откуда: Москва
Сообщений: 26
Большое спасибо за этот обзор - очень помог. Но не до конца :)
Наступил практически на все грабли, тобой описанные.
В самом конце наблюдаю следующую картину - все базы синхронизированы, все в полном порядке.
Пытаюсь выключить основной сервер - база на зеркальном не переходит в активный режим, а ведь именно это и требуется!
В чем собака порылась?
4 авг 09, 08:27    [7493419]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Кудряшка
Member

Откуда: Сидней
Сообщений: 2219
Или я не те книжки читаю... или зеркало не доступно для пользователей ни при какой конфигурации зеркалирования даже для чтения (SQL Server 2005 SP1).

Может что-то поменялось?
4 авг 09, 08:58    [7493473]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Кудряшка
Member

Откуда: Сидней
Сообщений: 2219
Девиченский Василий
В самом конце наблюдаю следующую картину - все базы синхронизированы, все в полном порядке.
Пытаюсь выключить основной сервер - база на зеркальном не переходит в активный режим, а ведь именно это и требуется!
В чем собака порылась?


а... а Вы с witness зеркалирование настроили?

автоматический (т.е. все само произойдет) failover возможен только если есть witness сервер и (если мне не изменяет память) зеркалирование настроено в синхронном режиме.
4 авг 09, 09:06    [7493508]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Кудряшка
Member

Откуда: Сидней
Сообщений: 2219
BOL

"Automatic failover requires the following conditions:

1. The database mirroring session must be running high-availability mode (that is, with full safety and a witness). For information about high-availability mode, see Synchronous Database Mirroring (High-Availability and High-Protection Modes).

2. The mirror database must already be synchronized (that is, the database must be in the SYNCHRONIZED state). This guarantees that all of the log sent to the mirror server has been hardened to disk.

3. The principal server has lost quorum, while the mirror and witness retain quorum. For information about having quorum, see Quorum in Database Mirroring Sessions. "
4 авг 09, 09:11    [7493523]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Кудряшка
Member

Откуда: Сидней
Сообщений: 2219
Кудряшка
BOL


BOL: ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.en/udb9/html/97e32ac6-2c1a-4563-af6f-7cbb986fe49b.htm

П.С.:
4 авг 09, 09:17    [7493544]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Lepsik
Member

Откуда: glubinka
Сообщений: 4255
вы уверены что ссылка, которую вы привели куда-то ведет?

--зеркалирование настроено в синхронном режиме.

HA доступно как в синхронном так и в асинхронном. Одно завершает транзкцию, когда транзакиця прошла на мирроренной базе, другая не дожижатеся подтверждения. Только первый тип возможен на стадартной версии, оба на энтерпрайз.
4 авг 09, 09:31    [7493620]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Lepsik
вы уверены что ссылка, которую вы привели куда-то ведет?
Это ссылка на локальный BOL, статья "Automatic Failover".

Сообщение было отредактировано: 4 авг 09, 09:35
4 авг 09, 09:35    [7493642]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Кудряшка
Member

Откуда: Сидней
Сообщений: 2219
да... что-то у меня сегодня со ссылками совсем плохо...
4 авг 09, 10:16    [7493866]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Кудряшка
Member

Откуда: Сидней
Сообщений: 2219
Lepsik

HA доступно как в синхронном так и в асинхронном. Одно завершает транзкцию, когда транзакиця прошла на мирроренной базе, другая не дожижатеся подтверждения. Только первый тип возможен на стадартной версии, оба на энтерпрайз.


Что знатит "НА" ? Или это "ТА" ?

А как же это?

"Automatic failover requires the following conditions:

1. The database mirroring session must be running high-availability mode (that is, with full safety and a witness)" (это из BOL... как говорил один мой друг "попробуй еще раз"... BOL - Automatic Failover )

full safety разве не предполагает синхронный режим зеркалирования?
(чем синхронный отличается от асинхроного я знаю, псб).
4 авг 09, 10:24    [7493913]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Guest который Дмитрий
Guest
2 Василий: пожалуйста. приятно сознавать что потратил время не зря.
На Ваш вопрос ответили ниже.

2 Кудряшка: зеркало действительно недоступно. даже для чтения. при попытке соединения выдается ошибка соединения. Не знаю почему так сделали, наверное для простоты. В будущем думаю прикрутят какой нибудь режим позволяющий делать запросы к зеркалу.

2 Лепсик: ссылку нужно копировать в вставлять в строку поиска експлорера. Остальные браузеры не знают их.
9 авг 09, 13:03    [7515013]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Кудряшка
Member

Откуда: Сидней
Сообщений: 2219
Guest который Дмитрий

2 Кудряшка: зеркало действительно недоступно. даже для чтения. при попытке соединения выдается ошибка соединения. Не знаю почему так сделали, наверное для простоты. В будущем думаю прикрутят какой нибудь режим позволяющий делать запросы к зеркалу.


Ну не знаю... вообще, когда знакомишься с новой для себя фичей, всегда полезно задать самый первый и важный вопрос: а для ЧЕГО эту фичу сделали.
Mirroring - это инструмент, способный обеспечить high-availability системы. Иными словами, failover, но НЕ для обеспечения пользователей копией данных для работы с этой копией.
9 авг 09, 16:26    [7515247]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Dvar
Member

Откуда:
Сообщений: 293
Кудряшка, вообще snapshot сделать можно, тогда читать можно будет. Только изменения в snapshot, естественно, не попадут.
9 авг 09, 23:51    [7515678]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
rata
Member

Откуда:
Сообщений: 130
Кудряшка
или зеркало не доступно для пользователей ни при какой конфигурации зеркалирования даже для чтения (SQL Server 2005 SP1).

Делайте снапшот с зеркала. Так часто- как мера и красота скажут :-)
Слишком часто не стоит - юзеров-то надо убить, прежде чес снапшот делать (Вы же не будете миллион снапшотов плодить)
Если места на доске жалко - снапшот в сжатую папку - он пустой практически :-)
10 авг 09, 09:01    [7515931]     Ответить | Цитировать Сообщить модератору
 Re: mirroring для чайников  [new]
Кудряшка
Member

Откуда: Сидней
Сообщений: 2219
Dvar
Кудряшка, вообще snapshot сделать можно, тогда читать можно будет. Только изменения в snapshot, естественно, не попадут.


это-то можно конечно... :)
10 авг 09, 13:49    [7517436]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить