Freigeben über


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.

Eingaben

Microsoft.SqlServer.Management.Smo.DatabaseReplicaState