Ежемесячно мне нужно создавать новый моментальный снимок для репликации и повторно инициализировать подписки в SQL 2005. Я действительно хотел бы автоматизировать и запланировать это, но мне не очень повезло с пониманием того, как это сделать.
Не будучи администратором баз данных, я в значительной степени слепо копаюсь там, и я определенно не хочу ничего напортачить. Есть предположения?
Было бы полезно, если бы мы знали, что это за репликация, и была ли это подписка по запросу или по запросу. Я собираюсь сделать здесь несколько серьезных предположений и сказать, что вы используете следующие, которые я считаю наиболее распространенными настройками репликации:
Если вы посмотрите на задания агента SQL у дистрибьютора, вы должны увидеть задание с примерно таким названием:
имя-сервера-имя-базы-публикации-1
Кроме того, он будет в категории REPEL-Snapshot.
При настройке репликации вам будет предоставлена возможность запускать моментальный снимок по расписанию. Если вы решили это сделать, вы должны увидеть это под расписаниями, в противном случае вы, вероятно, увидите там разовое расписание, которое не было включено с момента последнего запуска моментального снимка. Оставьте это расписание в покое и создайте другое по своему вкусу.
Это приведет к повторной инициализации публикации для всех подписчиков. Вы можете создать задание агента sql, чтобы запускать его, когда захотите. Больше подробностей проверить msdn.
exec sp_reinitsubscription @publication = 'publication_name', @subscriber = 'all'
Я не знаком с репликацией, так что имейте это в виду, но если вы видите кнопку сценария в верхнем левом углу диалоговых окон, вы можете сохранить этот сценарий, а затем запланировать выполнение задания.
Если функция сценария недоступна, вы можете прибегнуть к отслеживанию активности SSMS, чтобы увидеть, что он делает, а затем проработайте это и документацию, чтобы создать свой сценарий.