sp_setsubscriptionxactseqno (T-SQL)
Berlaku untuk: SQL Server
Digunakan selama pemecahan masalah untuk menentukan transaksi terakhir yang dikirim menggunakan nomor urutan log (LSN), memungkinkan Agen Distribusi untuk mulai mengirimkan pada transaksi berikutnya. Setelah dimulai ulang, Agen Distribusi mengembalikan transaksi yang lebih besar dari marka air (LSN) ini dari cache database Distribusi (msrepl_commands). Prosedur tersimpan ini dijalankan di Pelanggan pada database langganan. Tidak didukung untuk Pelanggan non-SQL Server.
Perhatian
Menggunakan prosedur tersimpan ini dengan salah atau menentukan nilai LSN yang salah dapat menyebabkan Agen Distribusi mengembalikan perubahan yang sudah diterapkan di Pelanggan atau melewati semua perubahan yang tersisa.
Sintaks
sp_setsubscriptionxactseqno
[ @publisher = ] N'publisher'
, [ @publisher_db = ] N'publisher_db'
, [ @publication = ] N'publication'
, [ @xact_seqno = ] xact_seqno
[ ; ]
Argumen
[ @publisher = ] N'publisher'
Nama Publisher. @publisher adalah sysname, tanpa default.
[ @publisher_db = ] N'publisher_db'
Nama database publikasi. @publisher_db adalah sysname, tanpa default. Untuk Penerbit non-SQL Server, @publisher_db adalah nama database distribusi.
[ @publication = ] N'publikasi'
Nama publikasi. @publication adalah sysname, tanpa default. Ketika lebih dari satu publikasi berbagi Agen Distribusi, Anda harus menentukan nilai ALL
untuk @publication.
[ @xact_seqno = ] xact_seqno
LSN transaksi berikutnya di Distributor yang akan diterapkan pada Pelanggan. @xact_seqno adalah varbinary(16), tanpa default.
Tataan hasil
Nama kolom | Jenis data | Deskripsi |
---|---|---|
ORIGINAL XACT_SEQNO |
varbinary(16) | LSN asli dari transaksi berikutnya yang akan diterapkan pada Pelanggan. |
UPDATED XACT_SEQNO |
varbinary(16) | LSN yang diperbarui dari transaksi berikutnya yang akan diterapkan pada Pelanggan. |
SUBSCRIPTION STREAM COUNT |
int | Jumlah aliran langganan yang digunakan selama sinkronisasi terakhir. |
Mengembalikan nilai kode
0
(berhasil) atau 1
(kegagalan).
Keterangan
sp_setsubscriptionxactseqno
digunakan dalam replikasi transaksional.
sp_setsubscriptionxactseqno
tidak dapat digunakan dalam topologi replikasi transaksional peer-to-peer.
sp_setsubscriptionxactseqno
dapat digunakan untuk melewati transaksi tertentu yang menyebabkan kesalahan saat berlaku di Pelanggan. Ketika ada kegagalan dan setelah Agen Distribusi berhenti, panggil sp_helpsubscriptionerrors di Distributor untuk mengambil xact_seqno
nilai transaksi yang gagal, lalu panggil sp_setsubscriptionxactseqno
, meneruskan nilai ini untuk @xact_seqno. Ini memastikan bahwa hanya perintah setelah LSN ini yang diproses.
Tentukan nilai 0
untuk @xact_seqno untuk mengirimkan semua perintah yang tertunda dalam database distribusi ke Pelanggan.
sp_setsubscriptionxactseqno
mungkin gagal jika Agen Distribusi menggunakan aliran multi-langganan.
Ketika kesalahan ini terjadi, Anda harus menjalankan Agen Distribusi dengan satu aliran langganan. Untuk informasi selengkapnya, lihat Agen Distribusi Replikasi.
Izin
Hanya anggota peran server tetap sysadmin atau peran database tetap db_owner yang dapat menjalankan sp_setsubscriptionxactseqno
.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk