So identifizieren Sie sich automatisch SQL Server Operator und zur Jobbenachrichtigung hinzufügen

Jetzt teilen:

Überwachung des Status von SQL server Jobs ist sehr wichtig. Wenn es beschädigt ist SQL Server Agent, dann würden Jobs nicht wie geplant ausgeführt. Also stellen Sie sicher, dass Sie Reparatur beschädigt SQL Server bevor Sie fortfahren. Die automatische Identifizierung des Bedieners und das Hinzufügen zur Jobbenachrichtigung auf Hunderten von Servern ist eine hektische Aufgabe. Mit diesem Skript können Sie jedoch problemlos alle Ihre überwachen SQL server Arbeitsplätze.

Stellen Sie die Operatoren ein

SQL Server Mit den Bedienern können Personen oder Gruppen Benachrichtigungen erhalten, wenn Aufträge abgeschlossen sind SQL server oder wann immer es einen Alarm gibt. SQL Server ermöglicht 3 Arten von Benachrichtigungen an diese Bediener

  1. E-Mail
  2. Pager
  3. Netsend

Erstellen Sie einen OperatorDurch SQL ServerBei der Datenbank-Mail wird von diesen drei Benachrichtigungsoptionen die E-Mail-Benachrichtigung am häufigsten bevorzugt und verwendet. SQL server. Sie können einen Operator manuell erstellen, indem Sie die folgenden Schritte ausführen

  1. Verbindung zum Ziel herstellen SQL ServerDatenbank-Engine
  2. Erweitern Sie die SQL ServerAgentenknoten
  3. Klicken Sie mit der rechten Maustaste auf den Ordner Operatoren unter SQL Server Agent und erstellen Sie dann einen Operator
  4. Geben Sie im Formular einen Namen für den Bediener ein. Fügen Sie unter Benachrichtigungsfelder eine E-Mail-Adresse hinzu. Sie können eine Gruppen-E-Mail-Adresse oder eine individuelle E-Mail-Adresse angeben. Sie können die Felder für die Seiten- und Netzsendeadresse leer lassen.

Sie können mehrere Operatoren erstellen, diese müssen jedoch eindeutig sein, dh die Namen der Operatoren müssen unterschiedlich sein. Bitte beachten Sie, dass Pager- und Net Send-Optionen aus zukünftigen Versionen von entfernt werden SQL Server.

Ausfallsicher

Aktivieren Sie den ausfallsicheren OperatorDas Erstellen eines Operators reicht nicht aus, wir müssen einen Operator als ausfallsicheren Operator festlegen. Ein ausfallsicherer Bediener ist der einzige Ansprechpartner, wenn SQL Server Der Agent kann nicht auf Systemtabellen in der MSDB-Datenbank zugreifen. Um einen Operator als ausfallsicher zu aktivieren, öffnen Sie die Eigenschaften von SQL Server Wählen Sie einen Operator aus und aktivieren Sie die Option E-Mail unter Fail-Safe-Operator.

Bediener und Benachrichtigungen automatisieren

Anstatt einen Operator manuell zu erstellen, müssen Sie ihn ausfallsicher machen und ihn der Benachrichtigung von SQL Job zuweisen. Sie können das Skript einfach in einem neuen Abfragefenster ausführen. Dieses Skript prüft, ob bereits ein Operator mit demselben Namen vorhanden ist. Wenn nicht, wird der Operator erstellt und als ausfallsicherer Operator zugewiesen. Dieser Operator wird dann den jeweiligen Fehlerbenachrichtigungen zugewiesen SQL Server Agentenjob auf diesem Server.

Multi-Server

Dieses Skript automatisiert jedoch die Erstellung und Benachrichtigung des Bedieners in einem einzigen SQL Server auf dem es ausgeführt wird, können Sie es einfach auf allen Ihren ausführen SQL Servers. Die einfache Methode besteht darin, registrierte Server zu erstellen und dieses Skript dann auf allen registrierten Servern auszuführen. Eine andere Methode besteht darin, dieses Skript als SQL-Datei zu speichern und dann das SQL-Skript auf allen Servern über SQL CMD auszuführen.

Skript:

DECLARE @find INT
DECLARE @operatorname VARCHAR(200)
DECLARE @operatoremail VARCHAR(500)

SET @operatorname = '<OPERATOR NAME>'
SET @operatoremail = '<OPERATOR EMAIL ADDRESS. SEPARATE MULTIPLE EMAIL ADDRESS BY ;'
SET @find = (
        SELECT count(*)
        FROM msdb.dbo.sysoperators
        WHERE NAME = @operatorname
        )

IF @find = 0
BEGIN
    EXEC msdb.dbo.sp_add_operator @name = @operatorname
        ,@enabled = 1
        ,@email_address = @operatoremail
END

EXEC master.dbo.sp_MSsetalertinfo @failsafeoperator = @operatorname
    ,@notificationmethod = 1

DECLARE @operator_id INT

SELECT @operator_id = [id]
FROM msdb.dbo.sysoperators
WHERE NAME = @operatorname

SELECT @operator_id

UPDATE msdb.dbo.sysjobs
SET notify_email_operator_id = 0

UPDATE msdb.dbo.sysjobs
SET notify_level_email = 0

Einführung des Autors:

Neil Varley ist ein Experte für Datenwiederherstellung in DataNumen, Inc., das weltweit führend bei Datenwiederherstellungstechnologien ist, einschließlich Relook-PST-E-Mail-Fehler reparieren und Excel-Wiederherstellungssoftwareprodukte. Für weitere Informationen besuchen Sie www.datanumen.com €XNUMX

Jetzt teilen:

Kommentare sind geschlossen.