Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Kombinieren Sie PowerShell und SQL Diagnostic Manager, um die SQL Server-Überwachung zu automatisieren

Führen Sie neue und vorhandene PowerShell-Skripts mit SQL Diagnostic Manager aus und nutzen Sie die enorme Leistungsfähigkeit von PowerShell über die anpassbare Überwachungsumgebung. Führen Sie Skripts aus, um automatisch auf von der Überwachungsumgebung erkannte Probleme zu reagieren, stellen Sie die Überwachungsumgebung über Cmdlets bereit und verwalten Sie sie, verbinden Sie vorhandene Skripts mit der Überwachungsumgebung, um ihre Ausführung zu automatisieren, und vermeiden Sie das Schreiben bestimmter Skripts in der flexiblen und dennoch einfachen Überwachungslösung.

Was ist PowerShell?

Windows PowerShell von Microsoft ist eine aufgabenbasierte Befehlszeilen-Shell und Skriptsprache. PowerShell ist speziell für die Systemadministration konzipiert. PowerShell wird immer häufiger als Automatisierungstool für Datenbankadministratoren eingesetzt. PowerShell baut auf .NET Framework auf und steuert und automatisiert die Verwaltung des Windows-Betriebssystems und der unter Windows ausgeführten Anwendungen.

PowerShell stellt eine Betriebsumgebung für Befehle bereit, die Cmdlets, Funktionen, Filter, Skripts, Aliase und ausführbare Dateien umfassen. SQL Diagnostic Manager stellt Cmdlets über seinen PowerShell-Anbieter bereit und führt Skripts über seinen PowerShell-Warnaktionsanbieter aus.

PowerShell arbeitet innerhalb einer Hosting-Anwendung, die dem Benutzer eine Befehlszeile zur Verfügung stellt. Es verwendet eine Host-Schnittstelle, um mit den Befehlen zu kommunizieren, die von der Befehlszeile aufgerufen werden. Verwenden Sie eine Konsolenanwendung, eine Windows-Anwendung oder eine Webanwendung als Hostanwendung.

Weitere Informationen finden Sie im Developer Network von Microsoft – Dokumentation „Getting Started with Windows PowerShell“, in der TechNet-Bibliothek von Microsoft „Scripting with Windows PowerShell“ und im Script Center von Microsoft – Learn „Windows PowerShell Scripting“.

SQL Diagnostic Manager-Funktionen mit PowerShell automatisieren

SQL Diagnostic Manager stellt einen PowerShell-Aktionsanbieter bereit, um Skripts als Ergebnis von Warnungen auszuführen. SQL Diagnostic Manager bietet auch ein PowerShell-Snap-In, um Skripts für alltägliche Aktivitäten zu ermöglichen (z. B. das Auflisten von Servern, das Verwalten überwachter Server, das Auflisten aktiver Warnungen und das Verwalten der Anwendungssicherheit von SQL Diagnostic Manager). Reagieren Sie auf Warnungen zu SQL Server-Metriken, automatisieren Sie die Bereitstellung von SQL Diagnostic Manager und passen Sie die Eigenschaften überwachter Instanzen von SQL Server an. Beispiele aus der Praxis umfassen das Aktivieren des Wartungsmodus für alle Instanzen, das Erstellen und Anwenden von Überwachungsvorlagen, das Intensivieren und Verringern der Überwachungsaktivität.

Reagieren Sie mit PowerShell auf Warnungen zu SQL Server-Metriken

Reagieren Sie mit SQL Diagnostic Manager automatisch auf Warnungen zu SQL Server-Metriken, indem Sie PowerShell-Skripts ausführen. Verwalten Sie Alarmantwortregeln und -kriterien über den Aktionsanbieter für PowerShell.

Der PowerShell-Aktionsanbieter auf der Registerkarte "Aktionsanbieter" des Fensters "Warnaktionen und Antworten" des SQL-Diagnose-Managers. Das PowerShell Command Action-Fenster, auf das über das Alert Response-Fenster von SQL Diagnostic Manager zugegriffen wird.

Weitere Informationen finden Sie in der Produktdokumentation von SQL Diagnostic Manager „Configure Automated Responses to Alerts – PowerShell Action Provider“.

Automatisieren Sie die Bereitstellung von SQL Diagnostic Manager mit PowerShell

Automatisieren Sie die Verwaltung der Implementierung von SQL Diagnostic Manager mit PowerShell-Cmdlets. Rufen Sie für Instanzen von SQL Server eine Liste der Instanzen im Netzwerk ab, fügen Sie Instanzen zur Überwachung im SQL-Diagnose-Manager hinzu und entfernen Sie sie, konfigurieren Sie die Optionen für überwachte Instanzen und geben Sie Servernamen an, die Sonderzeichen enthalten. Verwalten Sie für SQL Diagnostic Manager Berechtigungen von SQL Diagnostic Manager auf einem Server, steuern Sie Benutzer von SQL Diagnostic Manager, schalten Sie die Anwendungssicherheit für SQL Diagnostic Manager um, legen Sie die Protokollebene des Anbieters von SQL Diagnostic Manager fest und erstellen Sie ein Laufwerk für die Verbindung mit dem Repository von SQL Diagnostic Manager.

Weitere Informationen finden Sie in der Produktdokumentation von SQL Diagnostic Manager „PowerShell Cmdlets for SQL Diagnostic Manager“.

Die Ausgabe des PowerShell-Cmdlets „Get-Help Escape-SQLdmName“ in der PowerShell-Konsole.

Eigenschaften von überwachten SQL Server-Instanzen mit PowerShell anpassen

Verwenden Sie PowerShell-Cmdlets, um die Eigenschaften von Instanzen von SQL Server anzupassen, die von SQL Diagnostic Manager überwacht werden:Bearbeiten Sie die allgemeinen Einstellungen; Passen Sie die Einstellungen für die Überwachung von Abfragen, Abfragewartezeiten und Aktivitäten an; Anwendungen, Datenbanken und SQL-Anweisungen von der Überwachung von Abfragen ausschließen die Einstellungen zum Deaktivieren der Erfassung von Statistiken bei der Replikation anpassen; Passen Sie die Sammlung von Statistiken in Tabellen an; und passen Sie die Einstellungen für den Wartungsmodus an.

Bearbeiten Sie die allgemeinen Einstellungen:Schalten Sie für die Datenerfassung die erweiterte Datenerfassung um und legen Sie die Häufigkeit der geplanten Datenerfassung und der Erfassung von Statistiken zu Datenbanken fest. Setzen und löschen Sie Anzeigenamen für überwachte Instanzen, aktivieren, definieren Sie einen Wert für und deaktivieren Sie den Begrenzer für den Eingabepuffer, ordnen Sie Tags einem Server zu und heben Sie die Zuordnung auf. Legen Sie aus Sicherheitsgründen die Anmeldeinformationen für die SQL-Authentifizierung fest, schalten Sie die Verschlüsselung von Verbindungen um und schalten Sie die Zertifikate für Vertrauensserver um.

Passen Sie die Einstellungen für die Überwachung von Abfragen an:Schalten Sie die Überwachung von Abfragen um, aktivieren Sie die Verwendung von SQL-Ablaufverfolgung und erweiterten Ereignissen, schalten Sie die Erfassung tatsächlicher und geschätzter Abfragepläne um, richten Sie die Schwellenwerte für Dauer, Lesevorgänge auf logischen Datenträgern, CPU-Auslastung und Schreibvorgängen auf physischen Datenträgern ein , und aktivieren Sie die Erfassung von SQL-Batches, SQL-Anweisungen, gespeicherten Prozeduren und Triggern.

Passen Sie die Einstellungen für die Überwachung von Abfragewartezeiten an:Schalten Sie die Erfassung von Statistiken zu Abfragewartezeiten um, schalten Sie die Verwendung von erweiterten Ereignissen um und legen Sie die Erfassung auf eine bestimmte Zeit und Dauer sowie auf unbestimmte Zeit fest.

Passen Sie die Einstellungen für die Aktivitätsüberwachung an:Aktivieren Sie die Verwendung von SQL-Trace und erweiterten Ereignissen, schalten Sie die automatische Vergrößerung und Blockierung der Datenbank ein und aus und legen Sie den Schwellenwert für das Blockieren von Prozessen fest.

Passen Sie die Erfassung von Statistiken zu Tabellen an:Geben Sie für die Erfassung während Ruhezeiten die Tageszeit, die Wochentage, die minimale Tabellengröße zum Erfassen von Reorganisationsstatistiken und die Liste der auszuschließenden Datenbanken an.

Passen Sie die Einstellungen für den Wartungsmodus an:Schalten Sie den Wartungsmodus um und stellen Sie den Wartungsmodus auf „Wiederkehrend“ und „Einmalig“ ein. Stellen Sie für den wiederkehrenden Wartungsmodus die Wochentage, die Startzeit und die Dauer ein. Legen Sie für den einmaligen Wartungsmodus das Start- und Enddatum und die Uhrzeit fest.

Weitere Informationen finden Sie in der Produktdokumentation von SQL Diagnostic Manager „Customize your Monitored SQL Server Properties within PowerShell“.