SQLServer-Agent für Amazon verwenden RDS - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

SQLServer-Agent für Amazon verwenden RDS

Mit Amazon RDS können Sie SQL Server Agent auf einer DB-Instance verwenden, auf der Microsoft SQL Server Enterprise Edition, Standard Edition oder Web Edition ausgeführt wird. SQLServer Agent ist ein Microsoft Windows-Dienst, der geplante Verwaltungsaufgaben ausführt, die als Jobs bezeichnet werden. Sie können den SQL Server-Agent verwenden, um SQL T-Jobs auszuführen, um Indizes neu zu erstellen, Korruptionsprüfungen durchzuführen und Daten in einer SQL Server-DB-Instance zu aggregieren.

Wenn Sie eine SQL Server-DB-Instance erstellen, wird der Masterbenutzer für die SQLAgentUserRole Rolle registriert.

SQLDer Server-Agent kann einen Job nach einem Zeitplan, als Reaktion auf ein bestimmtes Ereignis oder bei Bedarf ausführen. Weitere Informationen finden Sie in der Microsoft-Dokumentation unter SQLServer-Agent.

Anmerkung

Vermeiden Sie es, Jobs zu planen, die während der Wartungs- und Backup-zeitfenster für Ihre DB-Instance ausgeführt werden. Die Wartungs- und Sicherungsprozesse, die von gestartet werden, AWS können einen Job unterbrechen oder dazu führen, dass er abgebrochen wird.

In Multi-AZ-Bereitstellungen werden SQL Server-Agent-Jobs vom primären Host auf den sekundären Host repliziert, wenn die Funktion zur Auftragsreplikation aktiviert ist. Weitere Informationen finden Sie unter Die SQL Server-Agent-Auftragsreplikation wird aktiviert.

Multi-AZ-Bereitstellungen haben ein Limit von 10.000 Server-Agent-Jobs. SQL Wenn Sie ein höheres Limit benötigen, fordern Sie eine Erhöhung an, indem Sie sich an uns wenden. AWS SupportÖffnen Sie die Seite des AWS Support -Centers, melden Sie sich an und wählen Sie Fall erstellen aus. Wählen Sie Service Limit increase (Erhöhung des Servicelimits). Füllen Sie das Formular aus und senden Sie es ab.

Um den Verlauf eines einzelnen SQL Server-Agent-Jobs in SQL Server Management Studio (SSMS) anzuzeigen, öffnen Sie den Objekt-Explorer, klicken Sie mit der rechten Maustaste auf den Job und wählen Sie dann Verlauf anzeigen.

Da der SQL Server-Agent auf einem verwalteten Host in einer DB-Instance ausgeführt wird, werden einige Aktionen nicht unterstützt:

  • Das Ausführen von Replikationsaufträgen und das Ausführen von Befehlszeilenskripts mithilfe von ActiveX, der Windows-Befehlsshell oder Windows PowerShell werden nicht unterstützt.

  • Sie können den Server-Agent nicht manuell starten, beenden oder neu startenSQL.

  • E-Mail-Benachrichtigungen über den SQL Server-Agent sind von einer DB-Instance aus nicht verfügbar.

  • SQLServer-Agent-Warnungen und Operatoren werden nicht unterstützt.

  • Die Verwendung des SQL Server-Agents zum Erstellen von Backups wird nicht unterstützt. Verwenden Sie AmazonRDS, um Ihre DB-Instance zu sichern.

  • Derzeit unterstützt RDS for SQL Server die Verwendung von SQL Server-Agent-Tokens nicht.

Die SQL Server-Agent-Auftragsreplikation wird aktiviert

Sie können die SQL Server-Agent-Auftragsreplikation mithilfe der folgenden gespeicherten Prozedur aktivieren:

EXECUTE msdb.dbo.rds_set_system_database_sync_objects @object_types = 'SQLAgentJob';

Sie können die gespeicherte Prozedur auf allen SQL Serverversionen ausführen, die von Amazon RDS for SQL Server unterstützt werden. Es werden Aufträge in den folgenden Kategorien repliziert:

  • [Uncategorized (Local)]

  • [Uncategorized (Multi-Server)]

  • [Uncategorized]

  • Datenauflister

  • Database Engine Tuning Advisor

  • Datenbankwartung

  • Volltext

Nur Jobs, die SQL T-Job-Schritte verwenden, werden repliziert. Jobs mit Schritttypen wie SQL Server Integration Services (SSIS), SQL Server Reporting Services (SSRS), Replikation und PowerShell werden nicht repliziert. Aufträge, die Datenbank-E-Mail und Objekte auf Serverebene verwenden, werden nicht repliziert.

Wichtig

Der primäre Host ist die Informationsquelle für die Replikation. Bevor Sie die Auftragsreplikation aktivieren, stellen Sie sicher, dass sich Ihre SQL Server-Agent-Jobs auf dem primären Server befinden. Wenn Sie dies nicht tun, kann es zum Löschen Ihrer SQL Server-Agent-Jobs führen, wenn Sie die Funktion aktivieren, wenn sich neuere Jobs auf dem sekundären Host befinden.

Sie können die folgende Funktion verwenden, um zu überprüfen, ob die Replikation aktiviert ist.

SELECT * from msdb.dbo.rds_fn_get_system_database_sync_objects();

Die SQL T-Abfrage gibt Folgendes zurück, wenn SQL Server-Agent-Jobs repliziert werden. Wenn sie nicht repliziert werden, wird für object_class kein Wert zurückgegeben.

SQLServer-Agent-Jobs werden repliziert

Sie können die folgende Funktion verwenden, um herauszufinden, wann Objekte das letzte Mal UTC rechtzeitig synchronisiert wurden.

SELECT * from msdb.dbo.rds_fn_server_object_last_sync_time();

Nehmen wir beispielsweise an, Sie ändern einen SQL Server-Agent-Job um 01:00 Uhr. Sie erwarten, dass die letzte Synchronisationszeit nach 01:00 Uhr liegt, was darauf hinweist, dass die Synchronisation stattgefunden hat.

Nach der Synchronisation wird erwartet, dass die für date_created und date_modified auf dem sekundären Knoten zurückgegebenen Werte übereinstimmen.

Serverobjekte wurden zuletzt um 01:21:23 Uhr synchronisiert.

Wenn Sie auch die tempdb Replikation verwenden, können Sie die Replikation sowohl für SQL Agent-Jobs als auch für die tempdb Konfiguration aktivieren, indem Sie sie im @object_type Parameter angeben:

EXECUTE msdb.dbo.rds_set_system_database_sync_objects @object_types = 'SQLAgentJob,TempDbFile';

Weitere Informationen zur tempdb Replikation finden Sie unterTempDB-Konfiguration für Multi-AZ-Bereitstellungen.