Какой самый чистый способ обратимо прервать репликацию SQL Server?
Я работаю с оповещениями агента SQL Server, надеясь, что смогу получать надежные уведомления об ошибках, когда наша транзакционная репликация прерывается. Однако, чтобы проверить это, мне нужно его сломать. У меня есть подписка, которую можно нарушить, но я не хочу тратить часы на повторную инициализацию и последующую доставку снимков. Есть ли простой, обратимый способ прервать репликацию?
2 ответа
ALTER DATABASE foo SET SINGLE_USER
Поскольку задания агента SQL, выполняющие репликацию, не могут подключаться к базе данных в однопользовательском режиме, это приводит к одновременному останову репликации и запрещению клиентских подключений.
Поэтому репликация нарушена, но ее можно возобновить без повторной инициализации (LSN все еще работает)
Как насчет того, чтобы довести его до совершенства в среде виртуальных машин и затем скопировать его на реальные серверы. Виртуальная машина может быть легко возвращена к предыдущему состоянию, поэтому вы всегда можете начать сначала.