Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Проблема с транзакционной репликацией  [new]
Yuri_dp
Member

Откуда: Днепропетровск
Сообщений: 305
Доброго времени суток!

Помогите решить следующую проблему: настроена транзакционная репликация неких таблиц из одной БД в другую. Команды Insert, Update и Delete заменены хранимыми процедурами на подписчике (т.е. все по умолчанию). При этом замечено, что при попытке на публикаторе сделать Update поля, по которому есть уникальный индекс, эта команда передается на подписчик как Delete и Insert, что категорически не устраивает. Как с этим бороться?
22 июл 04, 16:16    [828168]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с транзакционной репликацией  [new]
Yuri_dp
Member

Откуда: Днепропетровск
Сообщений: 305
Неужто никто не сталкивался с такой фигней? ...
22 июл 04, 19:25    [828966]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с транзакционной репликацией  [new]
alre
Member

Откуда:
Сообщений: 27
8202 - replicate UPDATE as DELETE/INSERT pair

This trace flag used to replicate UPDATE as DELETE/INSERT pair.
Let me to describe.
UPDATE commands at the publisher can be run as an "on-page DELETE/INSERT"
or a "full DELETE/INSERT".
If the UPDATE command is run as an "on-page DELETE/INSERT," the Logreader
send UDPATE command to the subscriber, If the UPDATE command is run as a
"full DELETE/INSERT," the Logreader send UPDATE as DELETE/INSERT Pair.
If you turn on trace flag 8202, then UPDATE commands at the publisher
will be always send to the subscriber as DELETE/INSERT pair.
22 июл 04, 19:30    [828975]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с транзакционной репликацией  [new]
Вербняков Александр
Member

Откуда: г.Таганрог, Ростовская область
Сообщений: 498
Where can we set the flag, thanks
22 июл 04, 19:43    [828999]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с транзакционной репликацией  [new]
Yuri_dp
Member

Откуда: Днепропетровск
Сообщений: 305
Спасибо огромное, завтра проверю... Если сработает, мне это ОФИГЕННО поможет!
22 июл 04, 19:49    [829013]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с транзакционной репликацией  [new]
Yuri_dp
Member

Откуда: Днепропетровск
Сообщений: 305
Флаг ставится (т.е. снимается) так:
DBCC TRACEOFF (8202)
GO

Попробовал - не ругается. Репликация у меня на другом объекте, завтра там и проверю. Но сам факт, что он не проругался на эту команду, обнадеживает!
22 июл 04, 19:52    [829015]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с транзакционной репликацией  [new]
alre
Member

Откуда:
Сообщений: 27
Book Online
search ""started with a specified trace flag""
22 июл 04, 19:54    [829017]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с транзакционной репликацией  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
https://www.sql.ru/forum/actualthread.aspx?bid=1&tid=108687
23 июл 04, 06:31    [829261]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с транзакционной репликацией  [new]
Yuri_dp
Member

Откуда: Днепропетровск
Сообщений: 305
Решил вернуться к старой теме:

Проверил состояние флага 8202

dbcc traceon(8202)

Он и так выключен. А репликация все равно работает как delete/insert.

Может я чего-то не так делаю?
11 сен 04, 23:37    [953169]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Проблема с транзакционной репликацией  [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 1014
Данный флаг работает только при проведении команды UPDATE не на первичном ключе уникальном индексе или поле учавствующем в фильтре этой репликации. При изменении именно этих поле одна команда Update все равно будет авторатически дробиться на две Delete + Insert
25 мар 06, 14:16    [2489216]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить