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

Откуда:
Сообщений: 10
Добрый день, помогите новичку разобраться с ошибкой. При выполнении репликации выводится ошибка:

Error messages:
Процессу слияния не удалось доставить моментальный снимок подписчику. Если используется веб-синхронизация, то процессу слияния, возможно, не удалось создать файл сообщения или выполнить запись в него. При устранении неполадок запустите синхронизацию повторно, включив ведение подробного журнала и указав выходной файл для записи. (Source: MSSQL_REPL, Error number: MSSQL_REPL-2147201001)
Get help: http://help/MSSQL_REPL-2147201001
Процессу не удалось выполнить массовое копирование в таблицу ""dbo"."ARM_Smena"". (Source: MSSQL_REPL, Error number: MSSQL_REPL20037)
Get help: http://help/MSSQL_REPL20037
Пакетная отправка не выполнена (Source: MSSQLServer, Error number: 0)
Get help: http://help/0
Нарушение "PK__ARM_Smen__F3760DFB443605EA" ограничения PRIMARY KEY. Не удается вставить повторяющийся ключ в объект "dbo.ARM_Smena". Повторяющееся значение ключа: (17713). (Source: MSSQLServer, Error number: 2627)
Get help: http://help/2627
Для получения файла с описанием ошибок, обнаруженных при инициализации подписывающей таблицы, выполните указанную ниже команду bcp. Дополнительные сведения о программе bcp и поддерживаемых ей параметрах см. в электронной документации. (Source: MSSQLServer, Error number: 20253)
Get help: http://help/20253
bcp "AGZS"."dbo"."ARM_Smena" in "\\ECOV\Share\replica\ftp\ECOV_AGZS_FLT2_13\20171119202302\ARM_Smena_2.bcp" -e "errorfile" -t"\n<x$3>\n" -r"\n<,@g>\n" -m10000 -SAGZS13 -T -w (Source: MSSQLServer, Error number: 20253)
Get help: http://help/20253

Я так понимаю, что есть повторяющиеся значения в таблице dbo.ARM_Smena с ключом 17713 (Vcode=17713). А где посмотреть этот повторяющиеся значение, как устранить ошибку? Не удалять же значение 17713 из таблицы, тем более эти ошибки много.
27 ноя 17, 14:59    [20986096]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с репликацией слиянием  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7399
walkman,

если правильно помню, необходимо задать диапазоны Identity для публикатора и подписчика. Думаю, это ваш случай.
27 ноя 17, 15:28    [20986262]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с репликацией слиянием  [new]
walkman
Member

Откуда:
Сообщений: 10
Владислав Колосов, можно поподробнее?
27 ноя 17, 15:58    [20986431]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с репликацией слиянием  [new]
walkman
Member

Откуда:
Сообщений: 10
Владислав Колосов
walkman,

если правильно помню, необходимо задать диапазоны Identity для публикатора и подписчика. Думаю, это ваш случай.


можно поподробнее?
27 ноя 17, 16:02    [20986447]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с репликацией слиянием  [new]
walkman
Member

Откуда:
Сообщений: 10


К сообщению приложен файл. Размер - 78Kb
27 ноя 17, 16:07    [20986460]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с репликацией слиянием  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7399
walkman,

если это не Identity, то ищите - как рассчитывается значение. У вас подписчик создает те же номера, что и публикатор.
27 ноя 17, 18:35    [20986850]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с репликацией слиянием  [new]
walkman
Member

Откуда:
Сообщений: 10
Владислав Колосов

если это не Identity, то ищите - как рассчитывается значение. У вас подписчик создает те же номера, что и публикатор.


У меня 14 подписчиков, каждый день выгружают данные в центральную базу. Если есть одинаковые значения в ЦБ, то по идее данные должны пропускаться. Это хозяйство мне осталось от разработчиков, все недоработано, вот разгребаю.
28 ноя 17, 07:14    [20987338]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с репликацией слиянием  [new]
invm
Member

Откуда: Москва
Сообщений: 9122
walkman,

У вас ошибка при инициализации подписки. Причина - для данной статьи в настройках выбрано "Keep existing object unchanged" для опции "Action if name is in use".
28 ноя 17, 11:55    [20987887]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с репликацией слиянием  [new]
walkman
Member

Откуда:
Сообщений: 10
invm

У вас ошибка при инициализации подписки. Причина - для данной статьи в настройках выбрано "Keep existing object unchanged" для опции "Action if name is in use".


Допустим, есть подписчик (удаленная база (base1), отправляет данные публикатору (центр база (mainbase). У mainbase уже есть таблица с значениями base1, поэтому выходят эти ошибки. А как правильно настроить обмен? Я понимаю так: если mainbase видит одинаковые значения/поля, то должен игнорить (пропускать) эти их и копировать данные, которых нет в mainbase. У меня все схемы так настроены "Keep existing object unchanged" для опции "Action if name is in use". Как правильно поступить?
28 ноя 17, 15:10    [20988617]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с репликацией слиянием  [new]
walkman
Member

Откуда:
Сообщений: 10
invm

У вас ошибка при инициализации подписки. Причина - для данной статьи в настройках выбрано "Keep existing object unchanged" для опции "Action if name is in use".


В свойствах всех таблиц установлено значение "Удалить существующий объект и создать новый".
А в свойствах данной таблицы - "Не изменять существующий объект". При изменении данной таблицы на "удалить существующий...", то выходит ошибка: Не удалось изменить значение свойства "pre_creation_command" на "Drop". (Microsoft.SqlServer.Rmo).
Property 'pre_creation_command' of article 'Comission_For_Akts' cannot be changed.
Changed database context to 'AGZS'. (.Net SqlClient Data Provider)
Номер ошибки: 21416
Серьезность: 16
Состояние: 1
Процедура: sp_changemergearticle
Номер строки: 385
28 ноя 17, 15:48    [20988734]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с репликацией слиянием  [new]
invm
Member

Откуда: Москва
Сообщений: 9122
walkman,

Значит придется удалить таблицу из публикации и добавить ее заново.
28 ноя 17, 16:14    [20988825]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с репликацией слиянием  [new]
walkman
Member

Откуда:
Сообщений: 10
invm

Значит придется удалить таблицу из публикации и добавить ее заново.

Спасибо за комментарий. Если я удаляю все строки в таблице, затем запускаю задание на обмен, то все работает, только данные не копируются, копируются только новые значения. Как все грамотно скопировать с подписчика в центральную базу и чтобы работала репликация?
1 дек 17, 09:11    [20997302]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить