Bagikan melalui


sp_get_redirected_publisher (T-SQL)

Berlaku untuk: SQL Server

Digunakan oleh agen replikasi untuk mengkueri distributor untuk menentukan apakah penerbit asli dialihkan.

Konvensi sintaks transact-SQL

Sintaks

sp_get_redirected_publisher
    [ @original_publisher = ] N'original_publisher'
    , [ @publisher_db = ] N'publisher_db'
    [ , [ @bypass_publisher_validation = ] bypass_publisher_validation ]
    [ , [ @multi_subnet_failover = ] multi_subnet_failover ]
[ ; ]

Argumen

[ @original_publisher = ] N'original_publisher'

Nama instans SQL Server yang awalnya menerbitkan database. @original_publisher adalah sysname, tanpa default.

[ @publisher_db = ] N'publisher_db'

Nama database yang sedang diterbitkan. @publisher_db adalah sysname, tanpa default.

[ @bypass_publisher_validation = ] bypass_publisher_validation

Digunakan untuk melewati validasi penerbit yang dialihkan. Jika 0, validasi dilakukan. Jika 1, validasi tidak dilakukan. @bypass_publisher_validation adalah bit, dengan default .0

[ @multi_subnet_failover = ] multi_subnet_failover

Berlaku untuk: SQL Server 2022 (16.x) CU 10 dan versi yang lebih baru

Digunakan untuk meneruskan informasi untuk pembuatan server tertaut dinamis. Jika 0, server tertaut dinamis tidak dibuat dengan MultiSubnetFailover parameter . Jika 1, server tertaut dinamis dibuat dengan MultiSubnetFailover parameter sebagai 1. @multi_subnet_failover adalah bit, dengan default .0

Mengembalikan nilai kode

0 (berhasil) atau 1 (kegagalan).

Tataan hasil

Nama kolom Jenis data Deskripsi
redirected_publisher nama sysname Nama penerbit setelah pengalihan.
error_number int Nomor kesalahan kesalahan validasi.
error_severity int Tingkat keparahan kesalahan validasi.
error_message nvarchar(4000) Teks pesan kesalahan validasi.

Keterangan

redirected_publisher mengembalikan nama penerbit saat ini. Mengembalikan NULL jika penerbit dan database penerbit tidak dialihkan menggunakan sp_redirect_publisher.

Jika validasi tidak diminta atau jika tidak ada entri untuk penerbit dan database penerbitan, error_number dan error_severity mengembalikan 0 dan error_message mengembalikan NULL.

Jika validasi diminta, prosedur tersimpan validasi sp_validate_redirected_publisher (Transact-SQL) dipanggil untuk memverifikasi bahwa target pengalihan adalah host yang cocok untuk database penerbitan. Jika validasi berhasil, sp_get_redirected_publisher mengembalikan nama penerbit yang dialihkan, 0 untuk error_number kolom dan error_severity , dan NULL di error_message kolom .

Jika validasi diminta dan gagal, nama penerbit yang dialihkan dikembalikan bersama dengan informasi kesalahan.

Izin

Pemanggil harus menjadi anggota peran server tetap sysadmin , peran database tetap db_owner untuk database distribusi, atau anggota daftar akses publikasi untuk publikasi yang ditentukan yang terkait dengan database penerbit.