Поделиться через


Выполнение сценариев до и после применения моментального снимка

Можно указать сценарии для выполнения на подписчике до и после применения моментального снимка. Сценарии могут использоваться по различным причинам, таким, как создание учетных имен и схем (владельцы объекта) на каждом подписчике.

Вы указываете размещение файла для каждого сценария, и агент моментальных снимков копирует файлы сценариев в текущую папку моментальных снимков при каждой обработке моментального снимка. При применении моментального снимка агент распространителя или агент слияния запускает сценарий, предшествующий моментальному снимку, перед любым из сценариев реплицируемых объектов. Агент распространителя или агент слияния запускает сценарий, следующий за моментальным снимком, после применения всех других сценариев реплицируемых объектов и применения данных. После того как применение моментального снимка завершено и файлы сценариев успешно выполнены, файлы сценариев удаляются из рабочего каталога на подписчике.

Сценарий запускается при помощи служебной программы sqlcmd. До развертывания сценария запустите его с помощью sqlcmd, чтобы убедиться, что он выполняется должным образом. Содержимое сценариев, которые выполняются до и после применения моментального снимка, должно быть повторяемым. Например, если вы создаете таблицу в сценарии, необходимо сначала проверить ее существование и предпринять соответствующее действие, если таблица существует. Сценарий должен быть повторяемым, потому что если необходимо повторно инициализировать подписку, для которой уже был применен сценарий, сценарий будет применен повторно, когда новый моментальный снимок будет применяться в процессе повторной инициализации.

При сжатии файла моментального снимка (посредством его помещения в CAB-файл Microsoft) сценарии так же сжимаются и помещаются в CAB-файл. После того как сжатый файл моментального снимка передан подписчику и распакован в рабочий каталог на подписчике, выполняются все сценарии, помеченные как сценарии, предшествующие моментальному снимку. Аналогично, любой сценарий, выполняющийся после моментального снимка, распаковывается и выполняется на подписчике как последний шаг в применении моментального снимка.

Важное примечаниеВажно!

Можно выполнить сценарии при применении моментального снимка к подписчикам, на которых запущен Microsoft SQL Server 7.0, если используются принудительные подписки, и на распространителе выполняется SQL Server 2000 или более поздняя версия. Вам не удастся выполнить сценарии при применении моментального снимка к подписчикам, на которых запущен SQL Server 7.0, если вы используете подписки по запросу.

Выполнение сценариев до и после применения моментального снимка