Freigeben über


MSSQL_ENG021798

Gilt für: SQL Server Azure SQL Managed Instance

Meldungsdetails

attribute Wert
Produktname SQL Server
Ereignis-ID 21798
Ereignisquelle MSSQLSERVER
Komponente SQL Server-Datenbank-Engine
Symbolischer Name
Meldungstext Der '%s'-Agent-Auftrag muss vor dem Fortsetzen des Vorgangs über '%s' hinzugefügt werden. Lesen Sie die Dokumentation zu '%3!s!'.

Erklärung

Um eine Veröffentlichung erstellen zu können, müssen Sie ein Mitglied der festen Serverrolle sysadmin auf dem Verleger oder ein Mitglied der festen Datenbankrolle db_owner in der Veröffentlichungsdatenbank sein. Wenn Sie ein Mitglied der db_owner -Rolle sind, wird dieser Fehler in folgenden Situationen ausgelöst:

  • Sie führen Skripts aus SQL Server 2000 (8.x) aus. Das Sicherheitsmodell wurde in SQL Server 2005 (9.x) geändert, und diese Skripts müssen aktualisiert werden.

  • Die gespeicherte Prozedur sp_addpublication wird ausgeführt, bevor sp_addlogreader_agent (Transact-SQL) ausgeführt wird. Dies gilt für alle Transaktionsveröffentlichungen.

  • Die gespeicherte Prozedur sp_addpublication wird ausgeführt, bevor sp_addqreader_agent (Transact-SQL) ausgeführt wird. Dies gilt für Transaktionsveröffentlichungen, für die Abonnements mit verzögertem Update über eine Warteschlange aktiviert sind (d. h., für den @allow_queued_tran-Parameter von sp_addpublication ist der Wert TRUE ausgewählt).

Die gespeicherten Prozeduren sp_addlogreader_agent und sp_addqreader_agent jedes Erstellen eines Agentauftrags und ermöglicht es Ihnen, das Microsoft Windows-Konto anzugeben, unter dem der Agent ausgeführt wird. Für Benutzer in der Sysadmin-Rolle werden Agentaufträge implizit erstellt, wenn sp_addlogreader_agent und sp_addqreader_agent nicht ausgeführt werden. Agents werden im Kontext des SQL Server-Agent Dienstkontos beim Distributor ausgeführt. Obwohl sp_addlogreader_agent und sp_addqreader_agent für Benutzer in der sysadmin -Rolle nicht erforderlich sind, empfiehlt sich als bewährte Sicherheitsmethode, ein separates Konto für die Agents anzugeben. Weitere Informationen finden Sie unter Replication Agent Security Model.

Benutzeraktion

Stellen Sie sicher, dass Sie die Prozeduren in der richtigen Reihenfolge ausführen. Weitere Informationen finden Sie unter Create a Publication. Wenn Sie über Replikationsskripts aus früheren Versionen von SQL Server verfügen, aktualisieren Sie diese Skripts so, dass sie die gespeicherten Prozeduren und Parameter enthalten, die von SQL Server 2005 (9.x) und höheren Versionen benötigt werden. Weitere Informationen finden Sie unter Upgrade-Replikationsskripts (Replikation Transact-SQL-Programmierung).For more information, see Upgrade Replication Scripts (Replication Transact-SQL Programming).