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


sp_replshowcmds (Transact-SQL)

Область применения: SQL Server Управляемый экземпляр SQL Azure

Возвращает команды для транзакций, отмеченных для репликации, в удобочитаемом формате. sp_replshowcmds можно запускать только в том случае, если клиентские подключения (включая текущее подключение) не считывают реплицированные транзакции из журнала. Эта хранимая процедура выполняется на издателе в базе данных публикации.

Соглашения о синтаксисе Transact-SQL

Синтаксис

sp_replshowcmds [ [ @maxtrans = ] maxtrans ]
[ ; ]

Аргументы

[ @maxtrans = ] maxtrans

Количество транзакций, о которых следует возвращать сведения. @maxtrans имеет значение int с значением по умолчанию1, указывающее максимальное количество транзакций, ожидающих репликации, для которой sp_replshowcmds возвращаются сведения.

Результирующий набор

sp_replshowcmds — это диагностическая процедура, которая возвращает сведения о базе данных публикации, из которой она выполняется.

Имя столбца Тип данных Description
xact_seqno binary(10) Последовательный номер команды.
originator_id int Идентификатор исходного элемента команды всегда 0.
publisher_database_id int Идентификатор базы данных издателя, всегда 0.
article_id int Идентификатор статьи.
type int Тип команды.
command nvarchar(1024) Команда Transact-SQL:

Замечания

sp_replshowcmds используется в репликации транзакций.

С помощью sp_replshowcmdsможно просмотреть транзакции, которые в настоящее время не распределены (эти транзакции, оставшиеся в журнале транзакций, которые еще не отправлены распространителю).

Клиенты, которые выполняются sp_replshowcmds и sp_replcmds в той же базе данных, получают ошибку 18752.

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

Примечание.

sp_replshowcmds следует запускать только для устранения неполадок с репликацией.

Разрешения

Могут выполняться sp_replshowcmdsтолько члены предопределенных ролей сервера sysadmin или db_owner предопределенных ролей базы данных.