none
Репликация: при восстановлении из бэкапа реплицируемой БД, "пропадает" публикация. RRS feed

  • Общие обсуждения

  • SQL Server 2008. Настроена push transactional replication. Переодически появляется необходимость восстановить реплицируемую БД из бэкапа. После рестора не вижу в Managment Studio в ветке Publication -> Local Publications эту самую публикацию. При чем джобы остаются на месте. Приходится всё перенастраивать заново. А в Replication Monitor репликации, как правило, не видно. Но после пересоздания репликации, старая "пропавшая репликация" иногда может появится в Replication Monitor со статусом "Not Running, Perfomance critical."

    Что я делаю не так?

Все ответы

  • Опишите, как вы создаете публикацию. Есть ли какие-либо ошибки в евентах?

    Посмотрите вот это , может быть, будет полезно.

    Модератор
  • Опишите, как вы создаете публикацию. Есть ли какие-либо ошибки в евентах?

    Посмотрите вот это , может быть, будет полезно.


    Создаю с помощью меню в Management Studio по одной из статей. До того, как понадобилось переодически восстанавливать публицируемую БД из бэкапа, проблем не знал.

     

    Сейчас у меня добавилась более критическая проблема на данный момент:

    После последнего рестора и пересоздание репликации, она вообще не хочет стартовать.
    Snapshot Agent пишет такую ошибку: "The concurrent snapshot for publication 'TursSearchEngine_2' is not available because it has not been fully generated or the Log Reader Agent is not running to activate it. If generation of the concurrent snapshot was interrupted, the Snapshot Agent for t (дальше отрезано) ".
    Хотя в его статусе видно, что snapshot готов на 100%

    Сервис SQL перезапускал, репликацию пересоздавал, реинициализировал - безуспешно.

     

  • В общем, я удалил публикацию TursSeacrhEngine2, вычистил таблицы msdb..MSdistpublishers, distribution..MSpublisher_databases, distribution..MSpublications, distribution..MSarticles, and distribution..MSsubscriptions от её старых записей. Настроил заново (сделал имя TursSeacrhEngine_ 2) и всё заработало. Спасибо за ликбез! :)
    Единственный косяк: в Replication Monitor видны старые 2 публикации со статусом "The publication no longer exists". Как бы их и отсюда убрать, чтобы не мешались? Прикладываю скриншот.

  • Может быть можно попробовать вот так ?
    Модератор
  • Как продвигается решение проблемы?
    Модератор
  • Как продвигается решение проблемы?

    Не помог последний совет. Хотя может быть, я не так понял.
    2 июля 2010 г. 10:23
  • Уважаемый Gattuso2009,

    что вам не понятно по приведенной ссылке?



    Daniil Khabarov, MSFT  Follow MSTechnetForum on Twitter
    Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий
    Посетите Блог Инженеров
    22 июля 2010 г. 12:38
    Модератор
  • SQL Server 2008. Настроена push transactional replication. Переодически появляется необходимость восстановить реплицируемую БД из бэкапа. После рестора не вижу в Managment Studio в ветке Publication -> Local Publications эту самую публикацию. При чем джобы остаются на месте. Приходится всё перенастраивать заново. А в Replication Monitor репликации, как правило, не видно. Но после пересоздания репликации, старая "пропавшая репликация" иногда может появится в Replication Monitor со статусом "Not Running, Perfomance critical."

    Что я делаю не так?


    При восстановлении нужно использовать аргумент KEEP_REPLICATION
    9 августа 2010 г. 8:39
  • SQL Server 2008. Настроена push transactional replication. Переодически появляется необходимость восстановить реплицируемую БД из бэкапа. После рестора не вижу в Managment Studio в ветке Publication -> Local Publications эту самую публикацию. При чем джобы остаются на месте. Приходится всё перенастраивать заново. А в Replication Monitor репликации, как правило, не видно. Но после пересоздания репликации, старая "пропавшая репликация" иногда может появится в Replication Monitor со статусом "Not Running, Perfomance critical."

    Что я делаю не так?


    При восстановлении нужно использовать аргумент KEEP_REPLICATION

    Александр, насколько я знаю, KEEP_REPLICATION используется при восстановлении базы с репликацией на другой сервер. В данном случае мы восстанавливаем на этот же.
    9 августа 2010 г. 11:05