Спрашивающий
Инициализация Merge подписки без копирования данных в bcp.

Общие обсуждения
-
Hi All!
Microsoft SQL Server 2005 - 9.00.3159.00 (Intel X86)
Mar 23 2007 16:15:11
Copyright (c) 1988-2005 Microsoft Corporation
Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)40 подписчиков.
Добавляем статью.
На каждую подписку требуется перегенерация snapshot агента.
Таблицы большие.
С фильтрами.
Перегенерация заново копирует данные в ...\ReplData\name.bcp
что занимает минут 30-40 для каждой подписки.
Полная работа по внесению небольшого изменения растягивается на несколько дней.
Возможна ли инициализация подписки без копирования bcp?
- Изменен тип Vinokurov YuriyModerator 29 октября 2009 г. 10:15
26 сентября 2007 г. 12:29
Все ответы
-
У Вас 40 подписчиков на 40 публикаций получается!? Если они одинаковые, то просто подпишите их всех на одну публикацию, и проблема будет решена.
Если нет, то, насколько я знаю, внести изменения в публикацию и не генерировать после этого snapshot - нельзя.
27 сентября 2007 г. 7:52 -
Таблица есть на подписчиках?
Если есть, она синхронна с издателем?
Фильтры динамические?
Снимки динамические?
Профиль снапшотагента меняли ?
27 сентября 2007 г. 13:05 -
Мы делаем следующее
1) backup database on publisher
2) restore database on subscriber
3) Add new publication
4) create subscription with parameter "no initialization"
5) run snapshot agent
6) run merge agent
Шаг 5 выполняется очень долго (более 10 час) в основном время уходит на
запись данных из таблиц на издателе в текстовые файлы ...\ReplData\name.bcp
которые затем пересылаются на подписчик
но так как мы создаем подписку без инициализации, то эти данные вообще
никогда не нужны, а время (и место на диске издателя) расходуются
snapshot agent нам нужен только для инициализации метаданных.
неужели никто не использует подписки без инициализации?
неужели нет решения данной проблемы?28 сентября 2007 г. 7:29 -
Эти 6 шагов Вы делаете для чего? ...надеюсь, не для добавления статьи...
Пробовали оптимизировать создание снимка? (если да, покажите профиль агента)
28 сентября 2007 г. 7:58 -
1) При добавлении новых подписчиков нам необходимо создать несколько новых публикаций2) Профиль snapshot агентаbcpbatchsize 100000historyverboselevel 2logintimeout 15maxbcpthreads 1packetsize 8192querytimeout 1800В профиле snapshot агента нет параметра, отключающего запись данных из таблиц на издателе в текстовые файлы,а очень хотелось бы ...28 сентября 2007 г. 10:38
-
Максимальное число потоков стоит увеличить. Даже для одного процессора есть смысл делать его равным 3.
Вывод в файл был, попробуйте это: http://www.sql.ru/articles/mssql/02120401ReplicationAgents.shtml#Output
Опишите подробней свою задачу, может быть можно что-то посоветовать с логикой репликации...
28 сентября 2007 г. 18:25 -
Маскимальное число потоков увеличивать не стоит. Велика вероятность возникновения deadlock.
Задача, в общих словах, заключается в постоянной поддержке и доработке сложной репликации слиянием с несколькими десятками подписчиков. Работы и доработки могут быть различными: от скриптования с полным удалением sp_removedbreplication и последующим разворачиванием, так и добавлением новой статьи.
И, при этих работах, большое время занимает копирование в общем-то не нужных данных в bcp при запуске snapshot агента.
Вот и возник вопрос, возможно ли какнибудь обойтись без этого копирования?
Судя по всему, понял что нет...
2 октября 2007 г. 4:31 -
Nikolai Bochkarev написано: Маскимальное число потоков увеличивать не стоит. Велика вероятность возникновения deadlock.
Вы сталкивались с тупиковыми блокировками при генерации снимков?
Гипертрейдинг используете?
2 октября 2007 г. 13:39 -
Да
Нет
3 октября 2007 г. 4:16 -
Можете показать граф тупиковой блокировки при создании снимка?
3 октября 2007 г. 7:56