У меня есть два сервера под управлением SQL 2008 R2 Standard, каждый с экземпляром с именем «MAIN». У меня есть небольшая тестовая база данных на моем основном сервере (одна таблица, 13 строк), которую я хочу реплицировать на второй сервер в качестве доказательства концепции для некоторых более крупных баз данных, которые я хочу реплицировать. Я настроил первичный сервер как издатель и распространитель, а базу данных настроил на репликацию транзакций. Я скопировал данные на второй сервер с помощью резервного копирования / восстановления, а не с помощью моментального снимка (что мне придется делать с более крупными базами данных из-за размера базы данных и ограниченной пропускной способности). Я выполнил инструкции здесь: http://gnawgnu.blogspot.com/2009/11/sql-2008-transactional-replication-and.html
Теперь о подписчике я перехожу в раздел Репликация / Локальные подписки / Щелкните правой кнопкой мыши / Свойства моей подписки на БД. Статус последней синхронизации показывает статус: «Процесс не смог подключиться к распространителю PRIMARYSERVER \ MAIN».
Данные ЯВЛЯЕТСЯ репликация с первичного на вторичный. Любая запись, которую я добавляю на первичный, появляется на вторичном сервере в течение нескольких секунд.
Является ли распространитель частью системы моментальных снимков, которую я не использую, или он является частью репликации транзакций?
Спасибо, Лэнс
Распространитель - это то, что записывает изменения от издателя и ставит их в очередь перед отправкой подписчику.
По умолчанию используется принудительная подписка, когда соединение от подписчика к распространителю не требуется, поскольку соединение идет от распространителя к подписчику. В этом случае я предполагаю, что существует брандмауэр, блокирующий либо UDP-порт 1434 на издателе, либо брандмауэр, блокирующий порт TCP, который прослушивает указанный экземпляр на PRIMARYSERVER.
Убедитесь, что в службах браузера запущен весь экземпляр SQL. Вы используете именованный экземпляр? Также посмотрите, не выполняются ли ресурсные задания.