?

Log in

SQL Database mirroring (Зеркалирование БД SQL) - Сообщество новичков и спецов по MS SQL SERVER (ru) [entries|archive|friends|userinfo]
Сообщество новичков и спецов по MS SQL SERVER (ru)

[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

SQL Database mirroring (Зеркалирование БД SQL) [Nov. 20th, 2009|03:35 pm]
Сообщество новичков и спецов по MS SQL SERVER (ru)

ru_sql_server

[fenst]
Привет.
Есть 2 сервака
SERV1 - Windows Server 2003 R2 RTM + SQL Server 2005 SP1
SERV2 - Windows Server 2003 R2 SP2 + SQL Server 2005 SP2
На первом расположена SQL база, которую ни в коем случае нельзя потерять. Чтобы копия всегда была актуальной, решили ее зазеркалировать.
Но мастер зеркалирования в самом конце выдает табличку


Если щелкнуть на сообщение об ошибке, вылезет окошко

Create failed for Endpoint 'Mirroring'. (Microsoft.SqlServer.Smo)
OperationExceptionText&EvtID=Create+Endpoint&LinkId=20476
------------------------------
An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)
------------------------------
Database mirroring is disabled by default. Database mirroring is currently provided for evaluation purposes only and is not to be used in production environments. To enable database mirroring for evaluation purposes, use trace flag 1400 during startup.(Microsoft SQL Server, Error: 1498)


что делать? поможет ли накатывание SP?
linkReply

Comments:
[User Picture]From: denisioru
2009-11-20 01:20 pm (UTC)
Да, либо оставить SP1, но в командную строку к сервису указать флаг /T1400
(Reply) (Thread)
[User Picture]From: denisioru
2009-11-20 01:20 pm (UTC)
Mirroring до SP2 как написано в сообщении - только for evaluation purposes.
(Reply) (Parent) (Thread)
[User Picture]From: fenst
2009-11-20 01:41 pm (UTC)
то есть обновление до sp2 поможет..

а не в курсе, насчет статистике падений серверов после накатывания обновлений?
а то не хочется на ночь оставаться, да еще и звание терять :)
(Reply) (Parent) (Thread)
[User Picture]From: denisioru
2009-11-20 01:50 pm (UTC)
Сколько накатывал - никогде не падал. SQL + репликация (и в двух местах мирроринг) работает в десятке мест, везде путь SQL Server -> SP2, ниразу косяков не огребал.
(Reply) (Parent) (Thread)
From: truerps
2009-11-20 01:52 pm (UTC)
Вы эту статистику будете руководству компании показывать, когда сервер упадёт? Обычно ничего не падает. Но готовым надо быть.
(Reply) (Parent) (Thread)
[User Picture]From: fenst
2009-11-20 02:19 pm (UTC)
у меня не компания, у меня ВС РФ :(
со всеми вытекающими :)

а можно хоть в паре слов: "готовым надо быть" - что в себя включает?
(Reply) (Parent) (Thread)
From: truerps
2009-11-20 02:39 pm (UTC)
Да что угодно. В SP много чего попадает. А SP2 у 2005 ещё и новый функционал.
Были, к примеру, в былые времена SQL Server 2000 проблемы с одним из поздних SP, когда AWE незаметно переставал работать.
(Reply) (Parent) (Thread)
[User Picture]From: fenst
2009-11-20 02:57 pm (UTC)
та мы люди скромные, у нас гиг всего

но ясно, спасибо
(Reply) (Parent) (Thread)
[User Picture]From: 109
2009-11-20 10:06 pm (UTC)
в read-only база может постоять несколько минут?
тогда можно:
1. сделать full backup
2. восстановить на втором сервере, где уже стоит sp2, оставив в режиме "restoring"
3. перевести первый сервер в read-only
4. сделать t-log бэкап
5. накатить t-log restore на втором сервере с переводом в нормальный режим (read-only уже можно убрать в этот момент)
6. переключить приложения на другой сервер (ну или сервер переименовать, без разницы).
7. спокойно накатить sp2 на первый сервер (который теперь уже не production-critical)
8. спокойно поднять mirroring

таким образом, база находится в read-only только в течение 4 и 5; 4 и 5 должны уложиться в несколько минут; если трафик маленький, то вообще в несколько секунд.
(Reply) (Parent) (Thread)
[User Picture]From: fenst
2009-11-20 01:42 pm (UTC)
в командную строку к сервису указать флаг /T1400

а как это делается?
(Reply) (Parent) (Thread)
[User Picture]From: denisioru
2009-11-20 03:46 pm (UTC)
Честно говоря не помню, думаю SC CONFIG или чтото типа того. Кстати на предмет "попробовать" можно просто остановить сервис sqlservr.exe и стартануть его в текстовой консоли:

sqlservr.exe -T 1400

(Reply) (Parent) (Thread)
[User Picture]From: 109
2009-11-20 09:54 pm (UTC)
...и вы получите сообщение, что сервис в консоли запустить нельзя :)

а trace flag лучше добавлять через sql server configuration manager. хотя можно и топором вырубить, конечно.
(Reply) (Parent) (Thread)
[User Picture]From: denisioru
2009-11-21 05:55 am (UTC)
Ну да, как всегда вылезает самый умный. Ты сам то пробовал?



sqlservr отлично стартует в консоли, и это кстати способ запустить его в user admin mode, в частности для восстановления из бакапа баз master, msdb и model.
(Reply) (Parent) (Thread)