dtcSoftware - SQLBlog
  1. Aktuelle Seite:  
  2. Startseite
  3. Tools

SQL Server AlwaysOn Setup Tool – Dokumentation

DBA-Team  ·  Intern  ·  Version 1.0.0  ·  April 2026
SQL Server AlwaysOn Setup Tool
Vollautomatische Konfiguration von Always On Availability Groups auf Windows Server Failover Clustern
SQL Server 2022 / 2025 Windows Server 2022 PowerShell 5.1+ FailoverClusters RSAT dbaTools >= 2.0

Das SQL Server AlwaysOn Setup Tool ist ein PowerShell-Script mit WinForms-Oberfläche, das alle Schritte zur Einrichtung einer Always On Availability Group (AG) auf einem bestehenden Windows Server Failover Cluster (WSFC) automatisiert. Es liest Cluster- und SQL-Informationen automatisch ein, präsentiert diese im PropertyGrid zur Überprüfung, und führt nach Bestätigung alle Konfigurationsschritte durch.

⚡ Empfehlung: SPNs vor dem Setup setzen
Wenn die Service Principal Names (SPNs) für das SQL-Dienstkonto im Active Directory vor dem Setup registriert sind, läuft das Tool vollautomatisch durch – ohne manuellen Eingriff. Fehlen SPNs, pausiert das Tool und erfordert einen zusätzlichen manuellen Schritt. Details in Abschnitt 4 – SPNs.

1. Übersicht und Konfigurationsschritte

Das Tool führt die folgenden neun Schritte in dieser Reihenfolge aus. Übersprungene Schritte werden im Log ausgewiesen.

SchrittBezeichnungBeschreibung
1SQL-Service-KontoOptional: Konto und Passwort per WMI auf allen Nodes ändern und Dienst neu starten
2HADR aktivierenAlways On per sp_configure 'hadr enabled', 1 auf allen Nodes; Dienst-Neustart mit aktivem Bereitschaftstest
3Endpoint erstellenDatenbankspiegelungs-Endpoint (Port 5022) per T-SQL anlegen und starten
4CONNECT-BerechtigungWindows-Login anlegen, GRANT CONNECT ON ENDPOINT auf alle Nodes
5TestdatenbankDatenbank anlegen, Recovery-Modell FULL setzen, initiales Full-Backup erstellen
6Availability GroupAG per reinem T-SQL (sqlcmd) anlegen, Replicas beitreten, Autoseed aktivieren
7ListenerAG-Listener mit IP-Adresse und Port per ALTER AVAILABILITY GROUP
8StatusAG-Synchronisierungsstatus und Replica-Rollen per DMV ausgeben
9SPN-PrüfungFehlende MSSQLSvc-SPNs erkennen, setspn-Befehle als Textdatei für das AD-Team exportieren

2. Voraussetzungen

Infrastruktur

  • Windows Server 2022 oder neuer auf allen Cluster-Nodes
  • SQL Server 2022 oder neuer (Enterprise oder Standard Edition)
  • Bestehender Windows Server Failover Cluster (WSFC) mit 2 oder 3 Nodes
  • Gemeinsamer Backup-Share (UNC), beschreibbar von allen Nodes
  • Port 5022 zwischen allen Nodes geöffnet (HADR Endpoint)

Berechtigungen

  • Lokaler Administrator auf dem ausführenden Cluster-Node
  • SQL Server sysadmin-Rolle auf allen Nodes
  • Domänen-Leserecht (für SPN-Prüfung in Schritt 9)
  • PowerShell als Administrator (#Requires -RunAsAdministrator)

PowerShell-Module

ModulInstallationHinweis
FailoverClustersRSAT-Clustering-PowerShellWird vom Script automatisch installiert
dbaTools >= 2.0Install-Module dbatoolsWird automatisch installiert; bereits geladene Version wird nicht neu importiert
ℹ dbaTools-Nutzung bewusst minimiert
Das Tool verwendet aus dbaTools nur Invoke-DbaQuery (T-SQL-Ausführung mit Credential-Support) und Connect-DbaInstance (Verbindungstest). Alle anderen Operationen laufen über direktes T-SQL (sqlcmd), WMI (Win32_Service) oder FailoverClusters-Cmdlets – um Versionsabhängigkeiten und interne Seiteneffekte zu vermeiden.

3. Bedienung

Start

  1. PowerShell ISE oder PowerShell 5.1+ als Administrator öffnen
  2. Script SetupAlwaysOn.ps1 ausführen
  3. Das Tool prüft Module, liest Cluster-Informationen automatisch ein
  4. Erkannte Werte erscheinen im PropertyGrid (linke Seite der Oberfläche)

PropertyGrid – Konfigurationsfelder

FeldKategorieBeschreibung
AG-Name3 – AGName der Availability Group (= WSFC-Rollenname)
Listener-Name3 – AGDNS-Name des AG-Listeners
Listener-IP3 – AGIP-Adresse des Listeners (aus Cluster übernommen)
Listener-Port3 – AGTCP-Port des Listeners (Standard: 1433)
Endpoint-Port3 – AGHADR Endpoint Port (Standard: 5022)
Failover-Modus3 – AGAutomatic = synchron mit auto. Failover; Manual = asynchron
Backup-Präferenz3 – AGPrimary / Secondary / PreferSecondary / None (Standard: Primary)
Test-Datenbank3 – AGName der in die AG aufzunehmenden Datenbank
Backup-Share4 – BackupUNC-Pfad für das initiale Full-Backup
Service-Konto2 – DienstSQL-Dienstkonto (automatisch erkannt, optional änderbar)

Ablauf nach dem Start

1
Alle Felder im PropertyGrid prüfen und ggf. anpassen
2
Primary-Node in der Dropdown-Liste wählen
3
Schaltfläche Konfiguration starten klicken
4
Fortschritt im Log-Bereich (rechts) farbkodiert in Echtzeit verfolgen
5
Falls SPNs fehlen: Weiter-Button nach manuellem SQL-Login-Setup klicken (→ Abschnitt 4)
6
Am Ende: SPN-Anforderungsdatei an das AD-Team weiterleiten

4. Service Principal Names (SPNs)

Service Principal Names (SPNs) sind Einträge im Active Directory, die SQL Server ermöglichen, Kerberos-Authentifizierung zu verwenden. Fehlen die SPNs, erscheint der Fehler „Cannot generate SSPI context" und Windows-Auth schlägt fehl.

⚠ SPNs vor dem Setup setzen – dringend empfohlen
Wenn SPNs fehlen, pausiert das Tool und fordert den Anwender auf, ein temporäres SQL-Login manuell per SSMS lokal auf jedem betroffenen Node anzulegen. Dieser Schritt entfällt vollständig, wenn die SPNs bereits im Active Directory registriert sind.

Auswirkung fehlender SPNs

SituationAuswirkungAblauf
SPNs gesetzt ✓ Windows-Auth (Kerberos) auf allen Nodes Vollautomatischer Durchlauf, kein manueller Eingriff
SPNs fehlen ✗ SSPI-Fehler auf betroffenen Nodes Tool pausiert → T-SQL-Block anzeigen → manuell ausführen → Weiter → Fortsetzung per SQL-Auth

Benötigte SPNs

Je Node und für den Listener-Namen sind zwei SPNs erforderlich (Kurzname und FQDN):

# Je SQL-Node – Kurzname und FQDN 
setspn -S MSSQLSvc/SQLNODE01:1433 DOMAIN\SQLServiceAccount 
setspn -S MSSQLSvc/SQLNODE01.domain.com:1433 DOMAIN\SQLServiceAccount 
 
setspn -S MSSQLSvc/SQLNODE02:1433 DOMAIN\SQLServiceAccount 
setspn -S MSSQLSvc/SQLNODE02.domain.com:1433 DOMAIN\SQLServiceAccount 
 
# AG-Listener 
setspn -S MSSQLSvc/AG-LISTENER:1433 DOMAIN\SQLServiceAccount 
setspn -S MSSQLSvc/AG-LISTENER.domain.com:1433 DOMAIN\SQLServiceAccount 
 
# Prüfung nach dem Setzen: 
setspn -L DOMAIN\SQLServiceAccount

Das Tool generiert in Schritt 9 automatisch die konkreten setspn-Befehle und speichert sie als Textdatei:
C:\System\WinSrvLog\MSSQL\AlwaysOn_SPN_ADTeam_<Datum>.txt

Ablauf wenn SPNs fehlen

1
Tool erkennt automatisch welche Nodes nicht per Kerberos erreichbar sind
2
T-SQL-Block zur manuellen Login-Anlage wird im Log angezeigt (fertig zum Kopieren)
3
Anwender führt das T-SQL per SSMS lokal auf jedem betroffenen Node aus (per RDP)
4
Klick auf Weiter – Tool prüft SQL-Auth-Verbindung auf allen Nodes
5
Temporäres Login wird am Ende automatisch entfernt, Policy reaktiviert

5. Ausgaben und Logdateien

Farbcodierung im Live-Log

FarbeBedeutung
Blau (fett)Abschnittsüberschrift (=== ... ===)
Hellgrün (fett)Erfolg – Aktion erfolgreich abgeschlossen
GelbWarnung – Aktion übersprungen oder Hinweis
Rot (fett)Fehler – Aktion fehlgeschlagen
HellgrauInformation – allgemeine Statusmeldung

Gespeicherte Dateien

Alle Dateien werden automatisch unter C:\System\WinSrvLog\MSSQL\ gespeichert.

DateiInhaltZeitpunkt
AlwaysOn_ClusterSettings_<Datum>.txtCluster-Konfiguration, AG-Parameter, Node-Status – Backup vor ÄnderungenVor Schritt 1
AlwaysOn_Setup_<Datum>.logVollständiges Text-Log aller Schritte mit ZeitstempelnNach Abschluss
AlwaysOn_Setup_<Datum>.rtfFarbiges RTF-Log (über Schaltfläche im Tool speicherbar)Manuell
AlwaysOn_SPN_ADTeam_<Datum>.txtFertige setspn-Befehle für das AD-Team mit Erklärung und PrüfbefehlSchritt 9

6. Fehlerbehebung

FehlermeldungUrsacheLösung
Cannot generate SSPI context SPNs für den Node fehlen im Active Directory Kurzfristig: manuellen SQL-Login-Schritt im Tool durchführen. Langfristig: SPNs durch AD-Team setzen lassen
WSFC group … already exists Überrest eines fehlgeschlagenen Setup-Versuchs Tool bereinigt automatisch: Remove-ClusterGroup + Registry-Key HadrAgNameToldMap auf allen Nodes
Login failed for user AGSetup_… SQL Server nicht im Mixed Mode oder Password-Policy blockiert Mixed Mode in SSMS prüfen: Server Properties → Security → SQL Server and Windows Authentication mode
Backup-Verzeichnis nicht erreichbar UNC-Pfad ungültig oder keine Schreibrechte Pfad im PropertyGrid korrigieren; muss von allen Nodes beschreibbar sein
Endpoint-Port 5022 bereits belegt Bestehender Endpoint oder Firewall blockiert den Port SELECT * FROM sys.endpoints WHERE type=4 ausführen; Port im PropertyGrid anpassen
AG nach 60s noch nicht sichtbar SQL Server nach HADR-Aktivierung noch nicht vollständig initialisiert Tool wartet aktiv per SELECT 1 (max. 2 Minuten). Bei Timeout Dienst manuell prüfen

7. Technische Details

Verbindungsstrategie

Einlesen: Windows-Auth per WMI für Dienst-Informationen; T-SQL für HADR-Status.
Konfiguration: Windows-Auth (Kerberos) auf allen Nodes testen. Bei SSPI-Fehler → temporäres SQL-Login mit kryptografisch zufälligem Passwort (28 Zeichen, RNGCryptoServiceProvider).
Cleanup: Temporäres Login nach Abschluss auf allen Nodes automatisch gelöscht, Policy reaktiviert.

AG-Anlage per sqlcmd

Für CREATE AVAILABILITY GROUP und alle AG-Join-Befehle wird sqlcmd direkt verwendet statt Invoke-DbaQuery. Grund: Nach dem Dienst-Neustart in Schritt 2 hält dbaTools intern gecachte Verbindungen, über die sys.availability_groups noch leer erscheint. sqlcmd öffnet bei jedem Aufruf eine frische TCP-Verbindung.

WSFC-Cleanup bei wiederholten Versuchen

Das Tool prüft vor der AG-Anlage ob eine verwaiste WSFC-Gruppe existiert und bereinigt automatisch:

  1. Stop-ClusterGroup + Remove-ClusterGroup -RemoveResources -Force
  2. Registry-Key HKLM:\Cluster\HadrAgNameToldMap auf allen Nodes per Invoke-Command bereinigen

Sicherheit

  • Temporäres SQL-Login: kryptografisch zufälliges Passwort, ausschließlich T-SQL-sichere Sonderzeichen
  • Passwort wird nie in Logdateien gespeichert – nur im RTF-Fenster der laufenden Sitzung sichtbar
  • Policy Enforce Password Policy wird nur für die Dauer der Login-Anlage deaktiviert
  • Login und Policy werden am Ende garantiert zurückgesetzt

 

AlwaysOn Setup Wiz

 

Ein Beispiel-Report erstellt mit Export-mssDatabaseDocumentation  aus den mssSQLTool....

 

DB-Doku DEV02

📊 Datenbank-Dokumentation

Instanz: DEV02  ·  Erstellt: 2026-04-24 13:59:38
AlwaysOnTestamazondtcSNEilinfo_New_ProdFSQLOperationsManagerDWReportServerReportServerTempDBSolutioninfoSolutioninfoSTASSISDBTestDB

📈 AlwaysOnTest

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion160
CollationLatin1_General_CI_AS
OwnerDEV02\Janke
Erstellt am2026-03-20
StatusNormal
Data-Größe (MB)8
Log-Größe (MB)8
Gesamt (MB)16
VLF-Anzahl4
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)2026-03-20 13:0835
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 1900-01-01 00:00 (vor 46135 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
PRIMARYAlwaysOnTestData864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\AlwaysOnTest.mdf
LOGAlwaysOnTest_logLog864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\AlwaysOnTest_log.ldf

Objekt-Zusammenfassung

Datenbank-User

Keine Benutzer gefunden.

📈 amazon

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion160
CollationLatin1_General_CI_AS
Ownermsssa
Erstellt am2025-05-17
StatusNormal
Data-Größe (MB)8
Log-Größe (MB)8
Gesamt (MB)16
VLF-Anzahl4
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)2026-03-20 12:1535
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 1900-01-01 00:00 (vor 46135 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
PRIMARYamazonData864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\amazon.mdf
LOGamazon_logLog864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\amazon_log.ldf

Objekt-Zusammenfassung

Datenbank-User

Keine Benutzer gefunden.

📈 dtcSN

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion160
CollationLatin1_General_CI_AS
OwnerDEV02\Janke
Erstellt am2026-02-05
StatusNormal
Data-Größe (MB)8
Log-Größe (MB)8
Gesamt (MB)16
VLF-Anzahl4
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)2026-03-20 12:1535
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 1900-01-01 00:00 (vor 46135 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
PRIMARYdtcSNData864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\dtcSN.mdf
LOGdtcSN_logLog864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\dtcSN_log.ldf

Objekt-Zusammenfassung

Datenbank-User

Keine Benutzer gefunden.

📈 Eilinfo_New_Prod

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion160
CollationLatin1_General_CI_AS
OwnerDEV02\Janke
Erstellt am2025-09-10
StatusNormal
Data-Größe (MB)8
Log-Größe (MB)8
Gesamt (MB)16
VLF-Anzahl4
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)2026-03-20 12:1535
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 1900-01-01 00:00 (vor 46135 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
PRIMARYEilinfo_New_ProdData864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\Eilinfo_New_Prod.mdf
LOGEilinfo_New_Prod_logLog864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\Eilinfo_New_Prod_log.ldf

Objekt-Zusammenfassung

Datenbank-User

Keine Benutzer gefunden.

📈 FSQL

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion130
CollationSQL_Latin1_General_CP1_CI_AS
Ownermsssa
Erstellt am2026-03-09
StatusNormal
Data-Größe (MB)128
Log-Größe (MB)64
Gesamt (MB)192
VLF-Anzahl4
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)2026-04-03 19:4721
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 2024-05-26 06:15 (vor 698 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
PRIMARYFSQLData128128 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\FSQL.mdf
LOGFSQL_logLog6464 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\FSQL_log.ldf

Objekt-Zusammenfassung

Datenbank-User

BenutzernameTypLoginNameErstelltAm
FITSSQLSQL_USER(kein Login)20.03.2024 23:21:40
NT AUTHORITY\SYSTEMWINDOWS_USERNT-AUTORITÄT\SYSTEM09.10.2018 17:44:32

📈 OperationsManagerDW

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion160
CollationLatin1_General_CI_AS
Ownermsssa
Erstellt am2024-09-26
StatusNormal
Data-Größe (MB)8
Log-Größe (MB)8
Gesamt (MB)16
VLF-Anzahl4
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)2026-03-20 12:1535
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 1900-01-01 00:00 (vor 46135 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
PRIMARYOperationsManagerDWData864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\OperationsManagerDW.mdf
LOGOperationsManagerDW_logLog864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\OperationsManagerDW_log.ldf

Objekt-Zusammenfassung

Datenbank-User

Keine Benutzer gefunden.

📈 ReportServer

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion160
CollationLatin1_General_100_CI_AS_KS_WS
OwnerDEV02\Janke
Erstellt am2026-04-20
StatusNormal
Data-Größe (MB)72
Log-Größe (MB)72
Gesamt (MB)144
VLF-Anzahl5
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)(kein Backup gefunden)-
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 1900-01-01 00:00 (vor 46135 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
PRIMARYReportServerData7264 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\ReportServer.mdf
LOGReportServer_logLog7264 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\ReportServer_log.ldf

Objekt-Zusammenfassung

Datenbank-User

BenutzernameTypLoginNameErstelltAm
NT SERVICE\SQLServerReportingServicesWINDOWS_USERNT SERVICE\SQLServerReportingServices20.04.2026 17:58:22

📈 ReportServerTempDB

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion160
CollationLatin1_General_100_CI_AS_KS_WS
OwnerDEV02\Janke
Erstellt am2026-04-20
StatusNormal
Data-Größe (MB)8
Log-Größe (MB)8
Gesamt (MB)16
VLF-Anzahl4
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)(kein Backup gefunden)-
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 1900-01-01 00:00 (vor 46135 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
PRIMARYReportServerTempDBData864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\ReportServerTempDB.mdf
LOGReportServerTempDB_logLog864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\ReportServerTempDB_log.ldf

Objekt-Zusammenfassung

Datenbank-User

BenutzernameTypLoginNameErstelltAm
NT SERVICE\SQLServerReportingServicesWINDOWS_USERNT SERVICE\SQLServerReportingServices20.04.2026 17:58:22

📈 Solutioninfo

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion160
CollationLatin1_General_CI_AS
Ownermsssa
Erstellt am2024-09-21
StatusNormal
Data-Größe (MB)8
Log-Größe (MB)8
Gesamt (MB)16
VLF-Anzahl4
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)2026-03-20 12:1535
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 1900-01-01 00:00 (vor 46135 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
PRIMARYSolutioninfoData864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\Solutioninfo.mdf
LOGSolutioninfo_logLog864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\Solutioninfo_log.ldf

Objekt-Zusammenfassung

Datenbank-User

Keine Benutzer gefunden.

📈 SolutioninfoSTA

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion160
CollationLatin1_General_CI_AS
OwnerDEV02\Janke
Erstellt am2025-10-01
StatusNormal
Data-Größe (MB)8
Log-Größe (MB)8
Gesamt (MB)16
VLF-Anzahl4
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)2026-03-20 12:1535
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 1900-01-01 00:00 (vor 46135 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
PRIMARYSolutioninfoSTAData864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\SolutioninfoSTA.mdf
LOGSolutioninfoSTA_logLog864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\SolutioninfoSTA_log.ldf

Objekt-Zusammenfassung

Datenbank-User

Keine Benutzer gefunden.

📈 SSISDB

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion160
CollationSQL_Latin1_General_CP1_CI_AS
Ownermsssa
Erstellt am2025-05-27
StatusNormal
Data-Größe (MB)40
Log-Größe (MB)61.9
Gesamt (MB)101.9
VLF-Anzahl43
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)2026-03-20 12:1535
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 1900-01-01 00:00 (vor 46135 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
PRIMARYdataData4010 %C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\SSISDB.mdf
LOGlogLog61,910 %C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\SSISDB.ldf

Objekt-Zusammenfassung

Datenbank-User

BenutzernameTypLoginNameErstelltAm
##MS_SSISServerCleanupJobUser##SQL_USER##MS_SSISServerCleanupJobLogin##27.05.2025 11:24:36
AllSchemaOwnerSQL_USER(kein Login)08.10.2022 06:30:32

📈 TestDB

Normal

Allgemeine Eigenschaften

Recovery-ModellSimple
KompatibilitätslevelVersion160
CollationLatin1_General_CI_AS
OwnerDEV02\Janke
Erstellt am2026-02-20
StatusNormal
Data-Größe (MB)16
Log-Größe (MB)8
Gesamt (MB)24
VLF-Anzahl4
ReadOnlyFalse
AutoCloseFalse
AutoShrinkFalse

Letzte Backups

TypLetzteAusführungAgeTage
Full (D)2026-03-20 12:1535
Diff (I)--
Log (L)n/a (Simple Recovery)-

✓ Letzte DBCC CHECKDB: 1900-01-01 00:00 (vor 46135 Tagen)

Datenbankdateien

DateigruppeDateinameTypGröße (MB)AutogrowPfad
HISTORYHistoryDataData864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\TesDB_2.mdf
PRIMARYTestDBData864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\TestDB.mdf
LOGTestDB_logLog864 MBC:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\TestDB_log.ldf

Objekt-Zusammenfassung

Datenbank-User

Keine Benutzer gefunden.

Erstellt durch mssSQLTool · Export-mssDatabaseDocumentation · 2026-04-24 13:59:38

mssSQLTool — Wie kann ich…? SQL-Admin Handout

mssSQLTool
Monitoring AlwaysOn Backup Performance Sicherheit Konfiguration Checkliste
SQL-Admin Tages-Handout

Wie kann ich…?
mssSQLTool in der Praxis

Praxis-Tipps und fertige Einzeiler für die täglichen Aufgaben des SQL Server-Administrators.

PowerShell 3.0+ dbatools required MS SQL Server v 1.0.0 · dtcSoftware
🔍 Monitoring 🔄 AlwaysOn 💾 Backup & Restore ⚡ Performance 🔒 Sicherheit ⚙️ Konfiguration ☑️ Checkliste
🔍

Monitoring & täglicher Status-Check

4 Tipps
Wie kann ich den Gesundheitszustand aller Datenbanken prüfen?
Get-mssDatabaseHealth liefert auf einen Blick: Recovery-Modus, letzte Backups, CHECKDB-Status, VLF-Zahl und AutoGrowth-Ereignisse.
Täglicher Gesundheitscheck
Get-mssDatabaseHealth 
# → Schreibt TXT + CSV in den OutputPath
Nur problematische Datenbanken
Get-mssDatabaseHealth -SqlInstance "SQL01" | 
Where-Object { 
$_.Status -ne 'Online' -or 
$_.LastFullBackup -lt (Get-Date).AddDays(-2) -or 
$_.VlfCount -gt 1000 
} | Format-Table DatabaseName, Status, LastFullBackup, VlfCount
Wie kann ich laufende Backup- oder Restore-Vorgänge überwachen?
Get-mssOperationStatus zeigt Fortschritt und Restdauer aktiver Operationen in Echtzeit.
Alle aktiven Operationen
Get-mssOperationStatus
Live-Aktualisierung alle 15 Sekunden
while ($true) { 
Clear-Host 
Get-mssOperationStatus -SqlInstance "SQL01" | 
Format-Table Database, OperationType, 
 PercentComplete, EstTimeRemaining -AutoSize 
Start-Sleep 15 
}
Wie kann ich fehlgeschlagene Agent-Jobs der letzten 24 Stunden sehen?
Get-mssAgentJobHistory filtert nach Status und Zeitraum — ideal für den Morgen-Check.
Alle Fehler der letzten 24 Stunden
Get-mssAgentJobHistory -Status Failure ` 
-Since (Get-Date).AddDays(-1) | 
Format-Table JobName, RunDate, Message -AutoSize
Nur Backup-Jobs prüfen
Get-mssAgentJobHistory -JobName '*Backup*' -Status Failure ` 
-Since (Get-Date).AddDays(-1)
Wie kann ich den freien Speicherplatz aller SQL-Volumes prüfen?
Get-mssDiskSpaceReport berechnet zusätzlich die geschätzte Zeit bis zur Erschöpfung anhand der AutoGrowth-Rate.
Bericht mit 10%-Warnschwelle
Get-mssDiskSpaceReport -SqlInstance "SQL01" -WarnThresholdPct 10 | 
Where-Object Status -eq 'Warning' | 
Sort-Object DaysUntilFull | 
Format-Table VolumeName, FreeGB, DaysUntilFull, Status -AutoSize
⚠ Täglich per Scheduled Task ausführen und Warnings per E-Mail versenden!
🔄

AlwaysOn Availability Groups

4 Tipps
Wie kann ich den Status aller AGs auf einen Blick prüfen?
Get-mssAgHealthReport liefert Sync-Status, Redo/Send-Queues und Listener-Info für alle AGs der Instanz.
AG Health Report
Get-mssAgHealthReport 
 
# Kritische Befunde herausfiltern: 
Get-mssAgHealthReport -SqlInstance "SQL01" | 
Where-Object OverallStatus -ne 'Healthy' | 
Format-Table AgName, ReplicaName, DbSyncState, RedoQueueMB
Wie kann ich eine neue Datenbank zur AG hinzufügen?
Invoke-mssAddDatabaseToAvailabilityGroup übernimmt alles: Recovery auf Full setzen, AutoSeed aktivieren, Secondaries bereinigen.
Einzelne Datenbank hinzufügen
Invoke-mssAddDatabaseToAvailabilityGroup ` 
-AvailabilityGroup "AG_Prod" -Database "NeueDB"
Alle User-DBs hinzufügen (sequenziell)
Invoke-mssAddDatabaseToAvailabilityGroup ` 
-AvailabilityGroup "AG_Prod" -All
Wie kann ich Logins, Jobs und Linked Server auf alle Secondaries synchronisieren?
Sync-mssAgNode erkennt Primary automatisch und synchronisiert alle Objekte auf alle Secondaries — ein Befehl genügt.
Vollautomatische Synchronisation
Sync-mssAgNode # erkennt Primary selbst 
Sync-mssAgNode -SqlInstance "SQL01" # explizit
Nur Logins synchronisieren
Sync-mssAgNode -SqlInstance "SQL01" ` 
-ExcludeType Jobs,LinkedServers,Operators,Alerts
Wie kann ich eine out-of-sync AG-Datenbank automatisch reparieren?
Repair-mssAlwaysOnDatabases erkennt defekte AG-Datenbanken vollautomatisch und repariert via Remove → Cleanup → AutoSeed.
Nur problematische DBs reparieren
Repair-mssAlwaysOnDatabases
Regelmäßig per Agent-Job ausführen
# Job erstellen (stündlich): 
New-mssAlwaysOnRepairJob -SqlInstance "SQL01"
⚠ Den Repair-Job am besten auf ALLEN AG-Nodes einrichten!
💾

Backup & Restore

3 Tipps
Wie kann ich alle User-Datenbanken schnell sichern?
Invoke-mssUserDatabaseBackup liest den Backup-Pfad automatisch aus den Server-Properties — kein Pfad-Parameter nötig.
Alle Benutzerdatenbanken sichern
Invoke-mssUserDatabaseBackup -All
Bestimmte Datenbanken auf Remote-Server
Invoke-mssUserDatabaseBackup -SqlInstance "SQL01" ` 
-Database "SalesDB","InventoryDB"
Wie kann ich eine Datenbank wiederherstellen — auch in einer AG?
Invoke-mssRestoreDatabase erkennt AG-Mitgliedschaft automatisch, exportiert User vorher und importiert sie nach dem Restore wieder.
Einfacher Restore
Invoke-mssRestoreDatabase -SqlInstance "SQL01" ` 
-BackupFile "D:\Backup\SalesDB.bak" ` 
-DatabaseName "SalesDB"
Full + Diff + Log-Sequenz
$seq = @( 
"D:\Bak\SalesDB_Full.bak", 
"D:\Bak\SalesDB_Diff.bak", 
"D:\Bak\SalesDB_Log.trn" 
) 
Invoke-mssRestoreDatabase -SqlInstance "SQL01" ` 
-BackupFiles $seq -DatabaseName "SalesDB"
Mit Pre-Restore-Backup (Sicherheitsnetz)
Invoke-mssRestoreDatabase -SqlInstance "SQL01" ` 
-BackupFile "D:\Bak\SalesDB.bak" ` 
-DatabaseName "SalesDB" -CreatePreRestoreBackup
✓ Bei AGs wird die DB automatisch ausgetragen und nach dem Restore wieder eingehängt.
Wie kann ich Backup-Dateien auf Gültigkeit prüfen?
Test-mssBackupIntegrity führt RESTORE VERIFYONLY aus — ideal vor dem Einspielen oder als nächtliche Routine.
Alle Backups eines Verzeichnisses verifizieren
Get-ChildItem "D:\Backup\*.bak" | ForEach-Object { 
$ok = Test-mssBackupIntegrity -SqlInstance "SQL01" ` 
-BackupPath $_.FullName 
[PSCustomObject]@{ File = $_.Name; Valid = $ok } 
} | Format-Table -AutoSize
⚡

Performance & Wartung

4 Tipps
Wie kann ich fragmentierte Indizes finden und Aktionen empfehlen lassen?
Get-mssIndexFragmentation liefert direkt die Empfehlung: REORGANIZE (5–30 %) oder REBUILD (>30 %). Kein manuelles Schwellen-Management.
Analyse einer Datenbank
Get-mssIndexFragmentation ` 
-Database "SalesDB" -MinFragmentationPercent 10 | 
Sort-Object FragmentationPercent -Descending | 
Format-Table TableName, IndexName, FragmentationPercent, Recommendation
💡 Besser: Ola-Job für IndexOptimize anlegen — dieser erledigt alles automatisch!
Wie kann ich ein aufgeblähtes Transaktions-Log verkleinern?
Invoke-mssLogShrink berechnet die Zielgröße automatisch. Bei Full-Recovery-Datenbanken vorher ein Log-Backup machen!
Log auf 20% schrumpfen (nach Backup)
# 1. Log sichern (bei Full Recovery): 
Backup-DbaDatabase -SqlInstance "SQL01" ` 
-Database "SalesDB" -Type Log -BackupDirectory "D:\Backup" 
 
# 2. Dann shrink: 
Invoke-mssLogShrink -Database "SalesDB" -ShrinkTargetPercent 20
Alle Datenbanken (Testlauf)
Invoke-mssLogShrink -SqlInstance "SQL01" -All -WhatIf
⚠ Häufiges Shrinken fragmentiert VLFs. Die Ursache des Wachstums beheben ist besser!
Wie kann ich die TempDB-Konfiguration optimieren?
Get-mssTempDbRecommendation prüft Dateianzahl (= CPU-Kerne, max 8), gleiche Größen, MB-basiertes AutoGrow und separate Volumes.
TempDB analysieren
Get-mssTempDbRecommendation -SqlInstance "SQL01"
Nur Handlungsbedarf anzeigen
Get-mssTempDbRecommendation -SqlInstance "SQL01" | 
Where-Object Status -ne 'OK' | 
Select-Object Status, Messages
Wie richte ich Ola Hallengrens Wartungs-Lösung vollständig ein?
Install-mssOlaMaintenanceSolution + New-mssOlaMaintenanceJobs erledigen Installation und Job-Erstellung in einem Schritt.
Komplettes Onboarding (neuer SQL Server)
# 1. Installieren 
Install-mssOlaMaintenanceSolution -SqlInstance "SQL01" 
 
# 2. Prüfen 
Test-mssOlaInstallation -SqlInstance "SQL01" 
 
# 3. Maintenance-Jobs anlegen 
New-mssOlaMaintenanceJobs -SqlInstance "SQL01" ` 
-ScheduleTime "23:00" -OperatorName "DBAs" 
 
# 4. System-DB-Backup-Job 
New-mssOlaSysDbBackupJob -SqlInstance "SQL01" ` 
-ScheduleTime "20:00" -OperatorName "DBAs"
🔒

Sicherheit & Compliance

3 Tipps
Wie kann ich das SA-Konto sicher verschleiern?
Invoke-mssSaObfuscation erkennt SA über die feste SID 0x01, generiert ein kryptographisch sicheres Kennwort und deaktiviert das Konto.
SA verschleiern und Kennwort sichern
$r = Invoke-mssSaObfuscation -SqlInstance "SQL01" 
# Kennwort SOFORT sicher aufbewahren: 
$r.GeneratedPassword | Out-File ` 
"C:\Secure\sa_pw_$(Get-Date -f 'yyyyMMdd').txt" 
Write-Host "Neuer Name: $($r.NewLoginName)"
Mehrere Instanzen
"SQL01","SQL02","SQL03" | ForEach-Object { 
Invoke-mssSaObfuscation -SqlInstance $_ -ContinueOnError 
} | Select-Object SqlInstance, NewLoginName, Status | Format-Table
⚠ Der Befehl prüft selbst, ob ein weiteres aktives sysadmin-Konto vorhanden ist!
Wie kann ich alle sysadmin-Konten auditieren?
Get-mssSysadminAccounts bewertet jeden Login: Expected, Unexpected, BuiltinAdmins, Excluded oder Disabled.
Audit (Systemkonten ausschließen)
Get-mssSysadminAccounts -SqlInstance "SQL01" ` 
-ExcludeLogin "NT SERVICE\*","NT AUTHORITY\*","msssa" ` 
-ExcludeSysAccounts | 
Where-Object Status -in 'Unexpected','BuiltinAdmins' | 
Format-Table LoginName, LoginType, IsEnabled -AutoSize
⚠ BUILTIN\Administrators immer separat prüfen — kann sich unbemerkt ändern!
Wie kann ich inaktive Logins und Policy-Verstöße finden?
Invoke-mssLoginAudit prüft CHECK_POLICY, EXPIRATION, MUST_CHANGE, Inaktivität, doppelte SIDs und optional AD-Orphans (erfordert RSAT).
Vollständiger Login-Audit
Invoke-mssLoginAudit -SqlInstance "SQL01" ` 
-InactivityThresholdDays 90 ` 
-MaxPasswordAgeDays 180 ` 
-ExcludeLogin "NT SERVICE\*"
Mit AD-Orphan-Prüfung
Invoke-mssLoginAudit -SqlInstance "SQL01" -CheckAdOrphans
⚙️

Konfiguration & Inventar

4 Tipps
Wie kann ich eine vollständige Instanz-Dokumentation erstellen?
Invoke-mssInstanceInventory dokumentiert alles: Version, Datenbanken, Logins, Jobs, Linked Server, AlwaysOn — in TXT und CSV.
Alle Instanzen inventarisieren
$instances = Get-Content "C:\Admin\sql_instances.txt" 
Invoke-mssInstanceInventory ` 
-SqlInstance $instances -ContinueOnError 
# Dateien in: (Get-mssConfig -Key 'OutputPath')
✓ Als monatlichen Scheduled Task einrichten — Compliance-Nachweis ohne Aufwand!
Wie kann ich zwei SQL Server-Instanzen konfigurativ vergleichen?
Compare-mssServerConfiguration vergleicht sp_configure, Collation, Version und MaxMemory zwischen zwei Instanzen.
Konfigurationsvergleich
Compare-mssServerConfiguration ` 
-SourceInstance "SQL01" -TargetInstance "SQL02" | 
Where-Object { $_.SourceValue -ne $_.TargetValue } | 
Format-Table Setting, SourceValue, TargetValue -AutoSize
Wie kann ich den Recovery-Modus für alle Datenbanken auf einmal setzen?
Invoke-mssSetDatabaseRecoveryMode setzt Simple, Full oder BulkLogged für alle oder ausgewählte User-DBs. Systemdatenbanken automatisch ausgeschlossen.
Alle User-DBs auf Full
Invoke-mssSetDatabaseRecoveryMode -All -RecoveryMode Full
Einzelne DB auf Simple
Invoke-mssSetDatabaseRecoveryMode ` 
-Database "ArchiveDB" -RecoveryMode Simple
Wie kann ich eine gespeicherte Prozedur in allen Datenbanken finden?
Find-mssDatabaseObject durchsucht alle Datenbanken einer Instanz nach Objekten — ideal bei komplexen Umgebungen.
Objekt über alle Datenbanken suchen
Find-mssDatabaseObject -SqlInstance "SQL01" ` 
-ObjectName "sp_GetOrders" | 
Format-Table Database, Schema, ObjectType, ObjectName
Alle Objekte mit OPENQUERY
Find-mssDatabaseObject -SqlInstance "SQL01" ` 
-ObjectName "*" -SearchInDefinition ` 
-SearchText "OPENQUERY"
☑️

Tägliche SQL-Admin Checkliste

Morgen-Routine Alle Instanzen in ~5 Minuten

$instances = "SQL01","SQL02","SQL03" # Anpassen! 
 
# 1. Fehlgeschlagene Agent-Jobs seit gestern 
Get-mssAgentJobHistory -Status Failure -Since (Get-Date).AddDays(-1) | 
Format-Table JobName, RunDate, Message 
 
# 2. Datenbanken ohne aktuelles Backup 
Get-mssDatabaseHealth -SqlInstance $instances -ContinueOnError | 
Where-Object { $_.LastFullBackup -lt (Get-Date).AddDays(-2) } | 
Select-Object SqlInstance, DatabaseName, LastFullBackup 
 
# 3. Disk-Space-Warnung 
Get-mssDiskSpaceReport -SqlInstance $instances -WarnThresholdPct 10 -ContinueOnError | 
Where-Object Status -eq 'Warning' | 
Sort-Object DaysUntilFull | 
Format-Table SqlInstance, VolumeName, FreeGB, DaysUntilFull 
 
# 4. AG-Status (nur AlwaysOn-Umgebungen) 
Get-mssAgHealthReport -SqlInstance $instances[0] | 
Where-Object OverallStatus -ne 'Healthy' | 
Format-Table AgName, ReplicaName, DbSyncState, RedoQueueMB 
 
# 5. Aktive Operationen (läuft noch etwas?) 
Get-mssOperationStatus -SqlInstance $instances[0]

📋 Instanz-Inventar erstellen

Invoke-mssInstanceInventory ` 
-SqlInstance $instances -ContinueOnError

🔒 Sysadmin-Audit durchführen

Get-mssSysadminAccounts -SqlInstance $inst ` 
-ExcludeSysAccounts

🔒 Login-Audit (Policy, Inaktiv)

Invoke-mssLoginAudit -SqlInstance $inst ` 
-CheckAdOrphans

⚡ Best-Practice-Check

Get-mssSQLInstanceCheck ` 
-SqlInstance $inst -Detailed

⚡ TempDB-Konfiguration prüfen

Get-mssTempDbRecommendation ` 
-SqlInstance $inst

💾 Backup-Integrität stichproben

Test-mssBackupIntegrity ` 
-SqlInstance $inst -BackupPath $bak

🔄 AG-Node-Sync (Logins/Jobs)

Sync-mssAgNode -SqlInstance $inst

📋 Linked-Server-Abhängigkeiten

Get-mssLinkedServerUsage ` 
-SqlInstance $inst

⚡ Modul-Setup & Konfiguration

# Modul laden 
Import-Module "C:\Pfad\mssSQLTool\mssSQLTool.psd1" 
 
# Einmalige Konfiguration 
Set-mssConfig ` 
-LogPath "D:\Logs\SQL" ` 
-OutputPath "D:\Reports\SQL" ` 
-CentralPath "\\Fileserver\SQL\Reports" 
 
# Konfiguration prüfen 
Get-mssConfig 
 
# Alle Funktionen anzeigen 
Get-Command -Module mssSQLTool | Sort-Object Name | Format-Table Name

mssSQLTool v1.0.0 · dtcSoftware · Janke · PowerShell 3.0+ · dbatools required

Wir verwenden Cookies

Diese Website verwendet eigene und Drittanbieter-Cookies, um Ihre Nutzererfahrung zu analysieren und zu verbessern.

Cookies-Richtlinie
Informationen zur Verwendung von Cookies

Cookies sind kleine Textdateien unserer Webseite, die auf Ihrem Computer vom Browser gespeichert werden wenn sich dieser mit dem Internet verbindet. Cookies können verwendet werden, um Daten zu sammeln und zu speichern um Ihnen die Verwendung der Webseite angenehmer zu gestalten. Sie können von dieser oder anderen Seiten stammen.

Es gibt verschiedene Typen von Cookies:

  • Technische Cookies erleichtern die Steuerung und die Verwendung verschiedener Optionen und Dienste der Webseite. Sie identifizieren die Sitzung, steuern Zugriffe auf bestimmte Bereiche, ermöglichen Sortierungen, halten Formulardaten wie Registrierung vor und erleichtern andere Funktionalitäten (Videos, Soziale Netzwerke etc.).
  • Cookies zur Anpassung ermöglichen dem Benutzer, Einstellungen vorzunehmen (Sprache, Browser, Konfiguration, etc..).
  • Analytische Cookies erlauben die anonyme Analyse des Surfverhaltens und messen Aktivitäten. Sie ermöglichen die Entwicklung von Navigationsprofilen um die Webseite zu optimieren.

Mit der Benutzung dieser Webseite haben wir Sie über Cookies informiert und um Ihr Einverständnis gebeten (Artikel 22, Gesetz 34/2002 der Information Society Services). Diese dienen dazu, den Service, den wir zur Verfügung stellen, zu verbessern. Wir verwenden Google Analytics, um anonyme statistische Informationen zu erfassen wie z.B. die Anzahl der Besucher. Cookies von Google Analytics unterliegen der Steuerung und den Datenschutz-Bestimmungen von Google Analytics. Auf Wunsch können Sie Cookies von Google Analytics deaktivieren.

Sie können Cookies auch generell abschalten, folgen Sie dazu den Informationen Ihres Browserherstellers.

Cookie-Einstellungen
Notwendige Cookies

Unerlässlich für grundlegende Funktionen der Website und nicht deaktivierbar.

3 Cookies erkannt.

  • jbcookies (JoomBall!)
    Speichert die vom Nutzer erteilte Zustimmung auf der Website.
  • joomla_user_state (Joomla!)
    Bewahrt den Authentifizierungsstatus des Nutzers.
  • joomla_remember_me_* (Joomla!)
    Hält die Sitzung für den authentifizierten Nutzer gespeichert.
Analyse-Cookies

Sie helfen, die Nutzung zu verstehen und die Leistung zu verbessern.

Für diese Kategorie wurden bisher keine Cookies erkannt.

Marketing-Cookies

Personalisieren die Werbung und messen die Wirksamkeit von Kampagnen.

Für diese Kategorie wurden bisher keine Cookies erkannt.

Nicht klassifizierte Cookies

Cookies, die auf Überprüfung oder automatische Klassifizierung warten.

Für diese Kategorie wurden bisher keine Cookies erkannt.

Main Menu

  • Home
  • SQL-Blog - Technisch
  • SQL-Blog - Allgemein
  • SQL-Tipps
  • SSIS-Tipps
  • T-SQL Scripts
  • ----------------------------------------
  • Reporting - Transparenz und Kontrolle
  • SCOM-basierte SQL Server Dokumentation
  • Standardisierte SQL-Server Installationen
  • AlwaysOn Availability - Automation
  • DeadlockCollector
  • ----------------------------------------
  • HowTo....
  • Beispiel Report
  • Downloads
  • ----------------------------------------
  • Background
  • Datenschutz­erklärung

Impressum

Hinweis zur verantwortlichen Stelle

dtcSoftware
Herrengasse 5
83521 Wasserburg
Telefon: +4915253552640
E-Mail: Janke@dtcsoftware.de