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


MSSQLSERVER_21898

Применимо к:SQL Server

Сведения

Атрибут значение
Название продукта SQL Server
Идентификатор события 21898
Источник событий MSSQLSERVER
Компонент SQLEngine
Символическое имя SQLErrorNum21898
Текст сообщения Издатель «%s» использует базу данных распространителя «%s», а не «%s», которая необходима для размещения базы данных публикации «%s». Запустите процедуру sp_changedistpublisher на распространителе '%s', чтобы изменить используемую издателем базу данных распространителя на '%s'.

Пояснение

sp_validate_redirected_publisher выполняет запросы к msdb.dbo.MSdistpublishers на локальном распространителе, чтобы убедиться, что новый издатель использует ту же базу данных распространителя, что и прежний издатель. Эта ошибка возвращается, если эти базы данных различаются, в результате издатель становится непригодным для размещения базы данных издателя.

Действие пользователя

Выполните хранимую процедуру sp_changedistpublisher, чтобы изменить базу данных распространителя для нового издателя на базу данных, которая использовалась первоначальным издателем.

Заметка

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