DTC-SQL-FAQ

Automatische Mitteilung bei einem Failover und Start der Services PDF Drucken E-Mail
  
Mittwoch, den 14. Juli 2010 um 11:58 Uhr

Eine Cluster Umgebung beherbergt oftmals hunderte Datenbanken die über sämtliche Nodes verteilt sind.
Obwohl die Cluster Technologie bereits seit längerer Zeit zur Verfügung steht, sind noch lang nicht alle Anwendungen Cluster tauglich.

Cluster tauglich meint, das die Anwendung im Falle eines Failovers sich automatisch neu verbindet.

Ist die Anwendung hierzu nicht in der Lage, dann muss nach einem Failover manuell eingegriffen werden.

Die Lösung hierzu ist relativ einfach. Bei einem Failover müssen die Administratoren verständigt werden,
die dann in einem solchen Fall eingreifen.

Falls sie noch nicht mit dem Failover Prozessess eines SQL-Servers vertraut sind, dann hierzu diese Hintergrunginformation:

Die Services sind verbunden mit Ressurcengruppen die sich auf einem shared volumen (SAN/NAS) befinden.
Die Ressurcengruppen sind immer nur mit einem physikalischen Server (Node) verbunden.
Erhält einer dieser Nodes eine Shutdown Anfrage, dann wird die Ressurce auf einen andern Node verschoben.
Dies bedeutet, dass der Service SQL-Agent neu gestartet werden muß.
Dieses Ereignis werden wir verwenden um eine Warnmeldung via Database-Mail zu versenden.
Selbstverständlich wird dieses Ereignis auch ausgelöst, wenn der SQL-Agent oder der SQL-Server mauell neu gestartet wird.
Dies können wir aber vernachlässigen.

Vorgehen:

Verbinden Sie sich mit dem SQL Server Management Studio zu der Cluster Instanz die Sie konfigurieren wollen.
Wählen Sie dort den Knoten SQL Server Agent/Jobs und wählen Sie dort Neuer Auftrag.

Tragen Sie einen Namen, eine Kategorie und eine Bescheibung für den neunen Auftrag ein:

auto_alert_step_1

Wechseln Sie dann zur Seite Schritte, wählen Sie dort Neuer Schritt, und geben Sie dort  folgendes T-SQL Script ein:

 

 

DECLARE @body_msg VARCHAR(500)
DECLARE @subject_msg VARCHAR(500) 
SET @subject_msg='Service Restart auf  ' + @@SERVERNAMESET
   @body_msg='Informationsmeldung der SQL-Service auf ' +
   @@SERVERNAME + ' wurde neu gestartet. Möglicher Failover. Bitte den Zustand und abhänige Dienste des Servers überprüfen'
  EXEC msdb..sp_send_dbmail       
  @profile_name ='SQLMAILER' 
 ,@recipients = ' 
 Diese E-Mail-Adresse ist gegen Spambots geschützt! JavaScript muss aktiviert werden, damit sie angezeigt werden kann.
      
 ,@subject = @subject_msg    
 ,@body  = @body_msg

 

 
 

Testen Sie dasT-SQL Script aber zvor im Query Analyser um sicher zustellen, dass es wie erwartet läuft!

Sie Müssen für dieses Script Database-Mail auf Ihrem Server eingerichtet haben und natürlich Profilname und Empfänge gem. Ihrer Gegebenheiten anpassen

Wählen Sie hier „Automatisch Starten, wenn der SQL-Server-Agent startet, und vergeben Sie einen Namen für diesen Schritt.

Namdem Sie den Job gespeichert haben, steht Ihnen die beschriebene Funktionalität absofort zur Verfügung.

Aktualisiert ( Mittwoch, den 28. Juli 2010 um 15:14 Uhr )
 

Kommentar schreiben


Sicherheitscode
Aktualisieren

Wer ist online

Wir haben 10 Gäste online
2432
HeuteHeute17
GesternGestern49
Diese WocheDiese Woche17
Dieser MonatDieser Monat238
TotalTotal2432
Statistik created: c
IP.:38.107.191.102
US
UNITED STATES
US
Copyright © 2010 DTC-SQL-FAQ. Alle Rechte vorbehalten.
Joomla! ist freie, unter der GNU/GPL-Lizenz veröffentlichte Software.