«Диапазон идентификаторов, управляемый репликацией, заполнен и должен быть обновлен агентом репликации».
Это начало происходить. Недавно мы специально прервали репликацию и не планируем восстанавливать репликацию.
Что еще мне нужно сделать, чтобы исправить эту ошибку? Кто-нибудь может мне посоветовать?
Репликация MS SQL Server использует ограничения базы данных на столбцы первичного ключа, чтобы предотвратить конфликты между серверами.
Например, предположим, что у вас есть таблица с именем «пользователи» с первичным ключом «user_id», работающая на сервере A и сервере B. Сервер A будет иметь ограничение на столбец user_id, разрешающее значения в диапазоне от 1 до 100. Сервер B будет иметь ограничение на столбец user_id, разрешающее значения в диапазоне от 101 до 200. Таким образом, если новый пользователь вставлен в одно и то же время на сервере A, а пока другой новый пользователь вставлен на сервер B, они никогда не будут тот же номер user_id.
Поскольку вы намеренно прервали репликацию и не планируете запускать ее снова, у вас есть два варианта. (Стандартный отказ от ответственности: сделайте резервную копию.)
Если вы еще этого не сделали, вы можете попробовать удалить публикацию из SQL Server Management Studio. Это должно удалить все настройки репликации из вашей базы данных и может решить проблему для вас.
В противном случае, если вам нужно сделать это вручную, вы можете войти и удалить эти ограничения вручную. Перейдите к соответствующей таблице, перейдите к ограничениям и найдите одну или несколько с именем, похожим на «repl_identity_range». Щелкните его правой кнопкой мыши и выберите «Изменить». Вы должны увидеть выражение, ограничивающее диапазон идентификаторов. Это будет выглядеть примерно так:
([user_id]]> (1) И [user_id]] <= (100))
Это фактическое правило, которое гарантирует, что вновь сгенерированные идентификаторы уникальны для каждого сервера. Удалите его, и вы должны перестать видеть эти ошибки.
Вот еще несколько полезных / информационных ресурсов:
http://www.simple-talk.com/sql/database-administration/the-identity-crisis-in-replication/ http://msdn.microsoft.com/en-us/library/ms176057.aspx