Switch-SqlAvailabilityGroup
Démarre un basculement d’un groupe de disponibilité vers un réplica secondaire.
Syntaxe
ByPath (Par défaut)
Switch-SqlAvailabilityGroup
[[-Path] <String[]>]
[-AllowDataLoss]
[-Force]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByObject
Switch-SqlAvailabilityGroup
[-InputObject] <AvailabilityGroup[]>
[-AllowDataLoss]
[-Force]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
L’applet de commande Switch-SqlAvailabilityGroup démarre un basculement d’un groupe de disponibilité vers un réplica secondaire spécifié. Exécutez cette applet de commande sur le réplica secondaire cible. Après le basculement, le réplica secondaire devient le réplica principal.
Exemples
Exemple 1 : Basculer un groupe de disponibilité
PS C:\> Switch-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG"
Cette commande effectue un basculement manuel du groupe MainAG de disponibilité vers l’instance de serveur nommée SecondaryServer\InstanceName.
Cette commande n’autorise pas la perte de données.
Exécutez cette commande sur l’instance de serveur qui héberge le réplica secondaire vers lequel basculer.
Exemple 2 : Forcer le basculement d’un groupe de disponibilité
PS C:\> Switch-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG" -AllowDataLoss
Cette commande effectue un basculement manuel du groupe MainAG de disponibilité vers l’instance de serveur nommée SecondaryServer\InstanceName.
La commande spécifie le paramètre AllowDataLoss .
Par conséquent, le basculement a le risque de perte de données et la commande vous invite à confirmer.
Spécifiez le paramètre Force pour ignorer la confirmation.
Exemple 3 : Créer un script pour basculer un groupe de disponibilité
PS C:\> Switch-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG" -Script
Cette commande crée un script Transact-SQL qui effectue un basculement manuel du groupe MainAG de disponibilité vers l’instance de serveur nommée SecondaryServer\InstanceName.
Le script n’autorise pas la perte de données. La commande n’entraîne pas le basculement.
Paramètres
-AccessToken
Jeton d’accès utilisé pour s’authentifier auprès de SQL Server, comme alternative à l’authentification utilisateur/mot de passe ou Windows.
Cela peut être utilisé, par exemple, pour se connecter à SQL Azure DBSQL Azure Managed Instance un Service Principal ou un Managed Identity.
Le paramètre à utiliser peut être une chaîne représentant le jeton ou un PSAccessToken objet tel qu’il est retourné en exécutant Get-AzAccessToken -ResourceUrl https://database.windows.net.
Ce paramètre est nouveau dans v22 du module.
Propriétés du paramètre
| Type: | PSObject |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-AllowDataLoss
Indique que cette applet de commande démarre un basculement forcé vers le réplica secondaire cible. La perte de données est possible. Sauf si vous spécifiez le paramètre Force ou Script , l’applet de commande vous invite à confirmer.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Confirm
Vous invite à confirmer avant d’exécuter l’applet de commande.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | cf |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Encrypt
Type de chiffrement à utiliser lors de la connexion à SQL Server.
Cette valeur est mappée à la Encrypt propriété SqlConnectionEncryptOption sur l’objet SqlConnection du pilote Microsoft.Data.SqlClient.
Dans la version 22 du module, la valeur par défaut est Optional (pour la compatibilité avec v21). Dans la version 23+ du module, la valeur par défaut est « Obligatoire », ce qui peut créer une modification cassant pour les scripts existants.
Ce paramètre est nouveau dans v22 du module.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Valeurs acceptées: | Mandatory, Optional, Strict |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Force
Force l’exécution de la commande sans demander la confirmation de l’utilisateur. Cette applet de commande vous invite à confirmer uniquement si vous spécifiez le paramètre AllowDataLoss .
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-HostNameInCertificate
Nom d’hôte à utiliser pour valider le certificat SQL Server TLS/SSL. Vous devez passer ce paramètre si votre instance SQL Server est activée pour Forcer le chiffrement et que vous souhaitez vous connecter à une instance à l’aide du nom d’hôte/shortname. Si ce paramètre est omis, le passage du nom de domaine complet (FQDN) à -ServerInstance est nécessaire pour se connecter à une instance SQL Server activée pour Forcer le chiffrement.
Ce paramètre est nouveau dans v22 du module.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-InputObject
Spécifie le groupe de disponibilité que cette applet de commande bascule.
Propriétés du paramètre
| Type: | AvailabilityGroup[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
ByObject
| Position: | 1 |
| Obligatoire: | True |
| Valeur du pipeline: | True |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Path
Spécifie le chemin d’accès du groupe de disponibilité que cette applet de commande bascule. Si vous ne spécifiez pas ce paramètre, cette applet de commande utilise l’emplacement de travail actuel.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
ByPath
| Position: | 1 |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Script
Indique que cette applet de commande retourne un script Transact-SQL qui effectue la tâche effectuée par cette applet de commande.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-TrustServerCertificate
Indique si le canal sera chiffré lors du contournement de la marche à pied de la chaîne de certificats pour valider l’approbation.
Dans la version 22 du module, la valeur par défaut est $true (pour la compatibilité avec v21). Dans v23+ du module, la valeur par défaut est « $false », ce qui peut créer une modification cassant pour les scripts existants.
Ce paramètre est nouveau dans v22 du module.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-WhatIf
Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande ne s’exécute pas.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Wi |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
CommonParameters
Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.
Entrées
Microsoft.SqlServer.Management.Smo.AvailabilityGroup
Vous pouvez transmettre un groupe de disponibilité à cette applet de commande.