Test-SqlDatabaseReplicaState
Wertet die Integrität einer Verfügbarkeitsdatenbank aus.
Syntax
ByPath (Standardwert)
Test-SqlDatabaseReplicaState
[[-Path] <String[]>]
[-ShowPolicyDetails]
[-AllowUserPolicies]
[-NoRefresh]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByObject
Test-SqlDatabaseReplicaState
[-InputObject] <DatabaseReplicaState[]>
[-ShowPolicyDetails]
[-AllowUserPolicies]
[-NoRefresh]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Das Cmdlet Test-SqlDatabaseReplicaState bewertet den Status einer Verfügbarkeitsdatenbank für alle verknüpften Verfügbarkeitsreplikate, indem sql Server policy based management (PBM)-Richtlinien ausgewertet werden.
Sie müssen über die CONNECTerforderlichen Berechtigungen zum VIEW SERVER STATE Ausführen dieses Cmdlets verfügenVIEW ANY DEFINITION.
Module requirements: version 21+ on PowerShell 5.1; version 22+ on PowerShell 7.x.
Beispiele
Beispiel 1: Bewerten der Integrität einer Verfügbarkeitsdatenbank
PS C:\> $Path = "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\DatabaseReplicaStates\MainReplica.MainDatabase"
PS C:\> Test-SqlDatabaseReplicaState -Path $Path
Mit diesem Befehl wird die Integrität der Verfügbarkeitsdatenbank ausgewertet, die für das Verfügbarkeitsreplikat MainDatabase in der Verfügbarkeitsgruppe MainReplica benannt MainAg ist, und gibt eine kurze Zusammenfassung aus.
Beispiel 2: Bewerten der Integrität aller Verfügbarkeitsdatenbanken in einer Verfügbarkeitsgruppe
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\DatabaseReplicaStates" | Test-SqlDatabaseReplicaState
Dieser Befehl wertet den Status aller Verfügbarkeitsdatenbanken in der MainAg Verfügbarkeitsgruppe aus und gibt eine kurze Zusammenfassung für jede Datenbank aus.
Beispiel 3: Bewerten der Integrität aller Verfügbarkeitsdatenbanken in einer Verfügbarkeitsgruppe mit Ergebnissen der PBM-Auswertung
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\DatabaseReplicaStates" | Test-SqlDatabaseReplicaState -ShowPolicyDetails
Dieser Befehl wertet den Status aller Verfügbarkeitsdatenbanken in der MainAg Verfügbarkeitsgruppe aus und gibt die Auswertungsergebnisse für jede ausgeführte PBM-Richtlinie aus.
Beispiel 4: Bewerten der Integrität aller Verfügbarkeitsdatenbanken in einer Verfügbarkeitsgruppe und Einschließen von benutzerdefinierten Richtlinien
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\DatabaseReplicaStates" | Test-SqlDatabaseReplicaState -AllowUserPolicies
Mit diesem Befehl wird der Status aller Verfügbarkeitsdatenbanken in der MainAg Verfügbarkeitsgruppe ausgewertet.
Benutzerdefinierte Richtlinien sind in dieser Auswertung enthalten.
Beispiel 5: Anzeigen aller Verfügbarkeitsdatenbanken in einem Fehlerstatus
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\DatabaseReplicaStates" | Test-SqlDatabaseReplicaState | Where-Object { $_.HealthState -eq "Error" }
Dieser Befehl zeigt alle Verfügbarkeitsdatenbanken mit einem Integritätsstatus Error in der MainAg Verfügbarkeitsgruppe an.
Parameter
-AccessToken
Das Zugriffstoken, das zur Authentifizierung bei SQL Server verwendet wird, als Alternative zur Benutzer-/Kennwort- oder Windows-Authentifizierung.
Dies kann z. B. verwendet werden, um eine Verbindung mit SQL Azure DB einer SQL Azure Managed Instance oder einer oder einer Service PrincipalManaged Identity herzustellen (siehe Verweise unten auf dieser Seite)
In gängigen Szenarien wird dieser Parameter mit etwas wie (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token (erfordert das Az.Accounts-Modul) abgerufen.
Der Typ des Parameters kann entweder string (Klartexttoken) oder SecureString (verschlüsseltes Token) sein, wie von neuerer Version des Cmdlets Get-AzAccessToken zurückgegeben.)
Parametereigenschaften
| Typ: | PSObject |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-AllowUserPolicies
Gibt an, dass dieses Cmdlet Benutzerrichtlinien in den AlwaysOn-Richtlinienkategorien ausführt.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-Confirm
Fordert Sie zur Bestätigung auf, bevor Sie das Cmdlet ausführen.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | False |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
| Aliase: | vgl |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-Encrypt
Der Verschlüsselungstyp, der beim Herstellen einer Verbindung mit SQL Server verwendet werden soll.
Dieser Wert ist der Encrypt Eigenschaft SqlConnectionEncryptOption für das SqlConnection-Objekt des Microsoft.Data.SqlClient-Treibers zugeordnet.
In v22 des Moduls ist Optional der Standardwert (aus Kompatibilität mit v21). In v23+ des Moduls lautet der Standardwert "Verpflichtend", wodurch für vorhandene Skripts eine bahnbrechende Änderung erstellt werden kann.
Dieser Parameter ist neu in v22 des Moduls.
Parametereigenschaften
| Typ: | String |
| Standardwert: | None |
| Zulässige Werte: | Mandatory, Optional, Strict |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-HostNameInCertificate
Der Hostname, der beim Überprüfen des TLS/SSL-Zertifikats von SQL Server verwendet werden soll. Sie müssen diesen Parameter übergeben, wenn Ihre SQL Server-Instanz für die Erzwingungsverschlüsselung aktiviert ist und Sie eine Verbindung mit einer Instanz mit hostname/shortname herstellen möchten. Wenn dieser Parameter nicht angegeben wird, ist das Übergeben des vollqualifizierten Domänennamens (Fully Qualified Domain Name, FQDN) an -ServerInstance erforderlich, um eine Verbindung mit einer SQL Server-Instanz herzustellen, die für die Erzwingungsverschlüsselung aktiviert ist.
Dieser Parameter ist neu in v22 des Moduls.
Parametereigenschaften
| Typ: | String |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-InputObject
Gibt ein Array von Verfügbarkeitsdatenbankstatusobjekten an. Dieses Cmdlet berechnet den Status dieser Verfügbarkeitsdatenbanken.
Parametereigenschaften
| Typ: | DatabaseReplicaState[] |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
ByObject
| Position: | 1 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | True |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-NoRefresh
Gibt an, dass dieses Cmdlet die durch die Parameter Path oder InputObject angegebenen Objekte nicht manuell aktualisiert.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-Path
Gibt den Pfad zu einem oder mehreren Datenbankreplikatclusterzuständen der Verfügbarkeitsdatenbank an. Dies ist ein optionaler Parameter. Wenn nicht angegeben, wird der Wert des aktuellen Arbeitsorts verwendet.
Parametereigenschaften
| Typ: | String[] |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
ByPath
| Position: | 1 |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-ShowPolicyDetails
Gibt an, dass dieses Cmdlet das Ergebnis jeder ausgeführten Richtlinienauswertung anzeigt. Das Cmdlet gibt ein Objekt pro Richtlinienauswertung aus, und die Ergebnisse der Auswertung sind in den Feldern des Objekts verfügbar.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-TrustServerCertificate
Gibt an, ob der Kanal verschlüsselt wird, während die Zertifikatkette umgangen wird, um die Vertrauensstellung zu überprüfen.
In v22 des Moduls ist $true der Standardwert (aus Kompatibilität mit v21). In v23+ des Moduls lautet der Standardwert "$false", wodurch möglicherweise eine änderung für vorhandene Skripts geändert wird.
Dieser Parameter ist neu in v22 des Moduls.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-WhatIf
Zeigt, was passiert, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | False |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
| Aliase: | Wi |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
CommonParameters
Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.