Назад | Перейти на главную страницу

Ошибка репликации SQL 2000 - подписки были помечены как неактивные и должны быть повторно инициализированы.

У нас есть большая база данных (350 ГБ), которая реплицируется на подписчика, который географически находится в другом месте. К сожалению, у нас медленное соединение между двумя сайтами.

Сегодня у дистрибьютора появляется следующая ошибка:

Подписки отмечены как неактивные и должны быть повторно инициализированы.

Есть ли способ вернуть это к жизни без восстановления подписки из моментального снимка?

Я использовал этот прием раньше, чтобы запустить репликацию. Предполагая, что у сайтов более быстрый доступ в Интернет, чем связь между ними.

Настройте репликацию, но используйте локальный путь, существующий на обоих серверах, для расположения моментального снимка. Запустите снимок. Сжимайте созданные текстовые файлы (они сильно сжимаются). FTP файлы на внешний FTP-сервер, к которому вы можете получить доступ с обоих сайтов. Когда они будут загружены, загрузите их на другом сайте. Распакуйте их и поместите в правильную папку. Запустите агент распространения на УДАЛЕННОМ сайте, чтобы он читал локальные файлы и вставлял их в локальную базу данных. После загрузки моментального снимка вы можете запустить агент распространения на любом сайте, который вы предпочитаете.

Я использовал этот метод для настройки репликации между США и Китаем, и он сократил время с 43 дней до 17 часов, что вполне укладывается в окно тайм-аута подписчика.

Я также использовал приемы Денни, но вам также может потребоваться оптимизировать поток трафика, чтобы получить оптимальную скорость. Есть две разные области, которые вам нужно настроить: репликация SQL и настройка сетевого TCPIP. У меня TCPIP написано в блоге http://www.sqlwebpedia.com/content/tcp-optimization-windows и один теперь для репликации: http://www.sqlwebpedia.com/content/transactional-replication-over-wan-tips HTH

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

Я думал, что видел какую-то статью в kb, описывающую способ регулировки тайм-аута для медленных соединений, но это, похоже, исчезло, или, возможно, это был сон.

Я буду продолжать наблюдать за этим пространством, чтобы увидеть, знает ли какой-нибудь гуру способ.

Есть новый метод инициализации из LSN, но он был представлен только в 2008 году. В более ранних версиях, включая 2000, нет возможности сделать аналогичный. Извините.