MS SQL Server 2005 — Зеркалирование или синхронизация двух одинаковых баз?
Задача состоит в том, чтобы иметь резервную полную копию основной базы. Чтобы в случае недоступности Основного сервера, приложение переключалось (код в приложении написать не сложно) на Резервный сервер и пользователи продолжали работать как ни в чем не бывало.
А когда поднимется Основной — то сделать его уже резервным и чтобы он синхронизировался с Основным, т.е. они меняются ролями.
СУБД MS SQL Server 2005 SP4. В нем есть функция зеркалирования. Настроить смогли с горем пополам. Пишет что зеркалирование настроено и активно — но:
1. данные с основного сервера не перетекают на резервный. вообще.
2. если обрушить основной и запустить команду на активацию резервного — то тоже ерунда происходит. он не поднимается и пишет что ничего не работает.
Настраивали по документации на MSDN. По пунктам.
Кто может проконсультировать по зеркалированию?
Думаем насчет альтернатив решения задачи. Как вы решали такую задачу? Может есть какие программные продукты, поверх СУБД, или скрипты?
Буквально недавно настраивал репликацию транзакций между 2008 Standard и 2008 Express. На каком именно этапе у вас загвоздка? Я делал через встроенный в management studio визард, особо проблем не было.
сумели настроить зеркалирование. без следящего сервера пока.
возник вопрос — кто должен принимать решение, что надо менять роли серверов? что надо перевести зеркальный в основной?
клиентское приложение — не вариант. пользователей более 100 одновременно. если один по ошибке переведет зеркальный в оперативный — то все должны будут пойти за ним. (
следящий сервер? но он может стать недоступным, тогда кто?
и еще. специалист который занимался SQL зеркалированием говорит, что сделать полностью автоматически все — нельзя. т.е. все равно придется перенастроить зеркало когда основной поднимется.
это действительно так? тогда смысл этого зеркалирования?
Ну, например, пишем на мастер, читаем со слейва. Мало? могу еще, но с утра лениво ")
Так как вы хотите сделать не получится, перед репликацией сервера «готовятся». В общем, жонглировать ролями просто так не реально. Превратить посписчика в источник можно, но это каждый раз потребует танцев с бубном и времени, при чем время будет расти вместе с ростом объемов данных.
Попробуйте посмотреть на свою задачу под другим углом, может быть конечную цель (а не озвученную, которая наверняка является промежуточным этапом) можно достичь другими способами?
Да, забыл сказать, то что Вы пытаетесь рализовать похоже на Failover cluster, что несколько больше чем просто репликация и требует дополнительной подготовки и иоборудования. Про возможности, области применения и ограничения поспрошайте у гугля. И имейте в виду, тема довольно сложная.