Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 репликация  [new]
Ольга1993
Guest
Добрый день. Есть два сервера S1 (publisher, distributor) И S2(subscriber). Между ними настроена транзакционная репликация одной базы DB. Причем DELETE-команды не реплицируются, а только INSERT'ы и UPDATE'ы. На сервере S1 есть джоб который чистит данные. А на сервере S2 все как бы копится в одной базе (DELETE не реплицируется). Вознкла необходимость перенести содержимое серверов S1 и S2 на новые сервера. Как лучше инициализировать подписчик, чтобы не потерять данные (или как перенести настроенную репликацию?)?

Думала делать так:
1) бэкап базы публикатора восстанавливаю на новом сервере 1
2) бэкап подписчика восстанавливаю на новом сервере 2

Настраиваю репликацию с нуля и указываю replication only (при инициализации). Но будет же дырка в данных (накопленных за время настройки репликации и т. п..).
14 ноя 15, 19:43    [18418092]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
invm
Member

Откуда: Москва
Сообщений: 9402
Пробуйте:
1. Восстанавливаете на новых серверах бекапы баз и поднимаете репликацию с инициализацией подписчика. Если делать replication only, потом не сможете реинициализировать подписку, если потребуется.
2. На старом издателе переводите опубликованную БД в оффлайн.
3. Проводите финальную синхронизацию.
4. На старом подписчике переводите БД подписчика в оффлайн.
5. На новых серверах переводите БД издетеля и подписчика в оффлайн.
6. Копируете файлы БД со старых серверов на новые.
7. Переводите БД на новом подписчике в онлайн.
8. Переводите БД на новом издателе в онлайн.
9. На новом издателе выполняете sp_replrestart в контексте опубликованной БД.
14 ноя 15, 22:13    [18418516]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
Ольга1993
Guest
invm
Пробуйте:
1. Восстанавливаете на новых серверах бекапы баз и поднимаете репликацию с инициализацией подписчика. Если делать replication only, потом не сможете реинициализировать подписку, если потребуется.
2. На старом издателе переводите опубликованную БД в оффлайн.
3. Проводите финальную синхронизацию.
4. На старом подписчике переводите БД подписчика в оффлайн.
5. На новых серверах переводите БД издетеля и подписчика в оффлайн.
6. Копируете файлы БД со старых серверов на новые.
7. Переводите БД на новом подписчике в онлайн.
8. Переводите БД на новом издателе в онлайн.
9. На новом издателе выполняете sp_replrestart в контексте опубликованной БД.


invm, спасибо за вариант. поняла Вас. а нельзя ли без простоя основной базы что-то придумать?
15 ноя 15, 10:38    [18419483]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
Ольга1993
Guest
Я могла бы докатить основную базу на новом сервере mirroring'ом или log shiping'ом.
15 ноя 15, 10:39    [18419487]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
invm
Member

Откуда: Москва
Сообщений: 9402
Простой подписчика допустим? Отсутствие на новом подписчике в течение некоторого времени архивных данных допустимо?
15 ноя 15, 11:29    [18419536]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
Ольга1993
Guest
invm
Простой подписчика допустим?


да

invm
Отсутствие на новом подписчике в течение некоторого времени архивных данных допустимо?


допустимо
15 ноя 15, 11:30    [18419538]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
Ольга1993
Guest
есть возможность настроить logshipping/mirroring для старого подписчика в новый и от старого публишера в новый.
15 ноя 15, 11:32    [18419540]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
Ольга1993
Guest
подписчик сильно отстает (сутки)
15 ноя 15, 11:35    [18419547]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
invm
Member

Откуда: Москва
Сообщений: 9402
Тогда можете, не обращая внимания на репликацию, поднять зеркалирование.
После синхронизации переключить всех на новый сервер и убрать зеркалирование.
Затем обычным образом поднимаете репликацию, а архивные данные перельете на нового подписчика со старого.
15 ноя 15, 12:13    [18419609]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
Ольга1993
Guest
invm
Тогда можете, не обращая внимания на репликацию, поднять зеркалирование.
После синхронизации переключить всех на новый сервер и убрать зеркалирование.
Затем обычным образом поднимаете репликацию, а архивные данные перельете на нового подписчика со старого.


Спасибо вам за варианты! Эх у нас не все просто с подписчиком. Вобщем, там схема несколько другая - индексы и вьюшки и не факт что это все, еще не все посмотрела. Может, мне просто подсунуть старую базу и инициализировать ее, как replication only? И долить разрыв данных в новый подписчик с основной базы?
15 ноя 15, 15:43    [18420002]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
invm
Member

Откуда: Москва
Сообщений: 9402
Ольга1993
Вобщем, там схема несколько другая - индексы и вьюшки и не факт что это все, еще не все посмотрела.
Не понял, почему это может стать препятствием.
15 ноя 15, 16:21    [18420085]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
invm
Member

Откуда: Москва
Сообщений: 9402
Можете сделать зеркалирование Старый издатель -> Новый издатель и Старый подписчик -> Новый подписчик.
Отключаете пользователей от старых серверов.
Отключаете зеркалирование.
Настраиваете на новых репликацию без инициализации.
Разрешаете пользователям работать с новыми серверами.

Время простоя будет минимальным.
15 ноя 15, 16:36    [18420115]     Ответить | Цитировать Сообщить модератору
 Re: репликация  [new]
Ольга1993
Guest
invm
Можете сделать зеркалирование Старый издатель -> Новый издатель и Старый подписчик -> Новый подписчик.
Отключаете пользователей от старых серверов.
Отключаете зеркалирование.
Настраиваете на новых репликацию без инициализации.
Разрешаете пользователям работать с новыми серверами.

Время простоя будет минимальным.


Спасибо Вам большое, invm! Буду так делать.
15 ноя 15, 18:56    [18420572]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить