sp_validate_replica_hosts_as_publishers (Transact-SQL)

Gilt für:SQL Server

sp_validate_replica_hosts_as_publishers ist eine Erweiterung, mit der sp_validate_redirected_publisher alle sekundären Replikate überprüft werden können, anstatt nur das aktuelle primäre Replikat. sp_validate_replica_hosts_as_publisher überprüft eine gesamte Always On-Replikationstopologie. sp_validate_replica_hosts_as_publishers muss direkt auf dem Verteiler ausgeführt werden, indem eine Remotedesktopsitzung verwendet wird, um einen Double-Hop-Sicherheitsfehler (21892) zu vermeiden.

Transact-SQL-Syntaxkonventionen

Syntax

sp_validate_replica_hosts_as_publishers
    [ @original_publisher = ] N'original_publisher'
    , [ @publisher_db = ] N'publisher_db'
    , [ @redirected_publisher = ] N'redirected_publisher' OUTPUT
[ ; ]

Argumente

[ @original_publisher = ] N'original_publisher'

Der Name der Instanz von SQL Server, die die Datenbank ursprünglich veröffentlicht hat. @original_publisher ist "sysname" ohne Standard.

[ @publisher_db = ] N'publisher_db'

Der Name der zu veröffentlichenden Datenbank. @publisher_db ist "sysname" ohne Standard.

[ @redirected_publisher = ] Ausgabe von N'redirected_publisher'

Das Ziel der Umleitung, als sp_redirect_publisher für das ursprüngliche Herausgeber/veröffentlichte Datenbankpaar aufgerufen wurde. @redirected_publisher ist ein AUSGABEparameter vom Typ "sysname" ohne Standard.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler).

Resultset

Keine.

Hinweise

Wenn kein Eintrag für den Herausgeber und die Veröffentlichungsdatenbank vorhanden ist, sp_validate_redirected_publisher wird null für den Ausgabeparameter @redirected_publisher zurückgegeben. Andernfalls wird der zugeordnete umgeleitete Verleger zurückgegeben, sowohl bei Erfolg und als auch bei Fehler.

Wenn die Überprüfung erfolgreich ist, sp_validate_redirected_publisher wird ein Erfolgshinweis zurückgegeben.

Wenn die Überprüfung fehlschlägt, werden entsprechende Fehler ausgelöst. sp_validate_redirected_publisher best effort to raise all issues and not just the first encountered.

sp_validate_replica_hosts_as_publishers schlägt mit dem folgenden Fehler fehl, wenn sekundäre Replikathosts überprüft werden, die keinen Lesezugriff zulassen oder leseabsichten angegeben werden müssen.

Meldung 21899, Ebene 11, Status 1, Prozedur sp_hadr_verify_subscribers_at_publisher, Zeile 109

Die Abfrage beim umgeleiteten Verleger „MyReplicaHostName“ zur Bestimmung, ob sysserver-Einträge für die Abonnenten des ursprünglichen Verlegers „MyOriginalPublisher“ vorliegen, ist mit Fehler 976 und folgender Meldung fehlgeschlagen: „Fehler 976, Stufe 14, Status 1, Meldung: The target database, 'MyPublishedDB', is participating in an availability group and is currently not accessible for queries. (Die Zieldatenbank „MyPublishedDB“ ist an einer Verfügbarkeitsgruppe beteiligt, und Abfragen können derzeit nicht darauf zugreifen.) Entweder die Datenverschiebung wurde angehalten, oder für das Verfügbarkeitsreplikat wurde kein Schreibzugriff aktiviert. Um schreibgeschützten Zugriff auf diese und andere Datenbanken in der Verfügbarkeitsgruppe zuzulassen, aktivieren Sie den Lesezugriff auf mindestens ein sekundäres Verfügbarkeitsreplikat in der Gruppe. Weitere Informationen finden Sie in der ALTER AVAILABILITY GROUP-Anweisung in SQL Server Books Online.

Berechtigungen

Der Aufrufer muss entweder Mitglied der festen Serverrolle "sysadmin ", der db_owner festen Datenbankrolle für die Verteilungsdatenbank oder ein Mitglied einer Publikationszugriffsliste für eine definierte Publikation sein, die der Herausgeberdatenbank zugeordnet ist.