Switch-SqlAvailabilityGroup
Inicia una conmutación por error de un grupo de disponibilidad en una réplica secundaria.
Syntax
Switch-SqlAvailabilityGroup
[-AllowDataLoss]
[-Force]
[[-Path] <String[]>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Switch-SqlAvailabilityGroup
[-AllowDataLoss]
[-Force]
[-InputObject] <AvailabilityGroup[]>
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
El cmdlet Switch-SqlAvailabilityGroup inicia una conmutación por error de un grupo de disponibilidad a una réplica secundaria especificada. Ejecute este cmdlet en la réplica secundaria de destino. Después de la conmutación por error, la réplica secundaria se convierte en la réplica principal.
Ejemplos
Ejemplo 1: Conmutación por error de un grupo de disponibilidad
PS C:\> Switch-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG"
Este comando realiza una conmutación por error manual del grupo MainAG
de disponibilidad en la instancia del servidor denominada SecondaryServer\InstanceName
.
Este comando no permite la pérdida de datos.
Ejecute este comando en la instancia del servidor que hospeda la réplica secundaria a la que se va a conmutar por error.
Ejemplo 2: Forzar una conmutación por error de un grupo de disponibilidad
PS C:\> Switch-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG" -AllowDataLoss
Este comando realiza una conmutación por error manual del grupo MainAG
de disponibilidad en la instancia del servidor denominada SecondaryServer\InstanceName
.
El comando especifica el parámetro AllowDataLoss .
Por lo tanto, la conmutación por error tiene el potencial de pérdida de datos y el sistema le pide confirmación.
Especifique el parámetro Force para omitir la confirmación.
Ejemplo 3: Creación de un script para conmutar por error un grupo de disponibilidad
PS C:\> Switch-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG" -Script
Este comando crea un script de Transact-SQL que realiza una conmutación por error manual del grupo MainAG
de disponibilidad a la instancia de servidor denominada SecondaryServer\InstanceName
.
El script no permite la pérdida de datos. El comando no provoca la conmutación por error.
Parámetros
-AccessToken
Token de acceso que se usa para autenticarse en SQL Server, como alternativa a la autenticación de usuario o contraseña de Windows.
Esto se puede usar, por ejemplo, para conectarse a SQL Azure DB
y SQL Azure Managed Instance
usar o Service Principal
.Managed Identity
El parámetro que se va a usar puede ser una cadena que representa el token o un PSAccessToken
objeto tal y como se devuelve mediante la ejecución Get-AzAccessToken -ResourceUrl https://database.windows.net
de .
Este parámetro es nuevo en la versión 22 del módulo.
Type: | PSObject |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllowDataLoss
Indica que este cmdlet inicia una conmutación por error forzada a la réplica secundaria de destino. Es posible que se pierdan datos. A menos que especifique el parámetro Force o Script , el cmdlet le pedirá confirmación.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Le solicita su confirmación antes de ejecutar el cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Encrypt
Tipo de cifrado que se va a usar al conectarse a SQL Server.
Este valor se asigna a la Encrypt
propiedad SqlConnectionEncryptOption
del objeto SqlConnection del controlador Microsoft.Data.SqlClient.
En la versión 22 del módulo, el valor predeterminado es Optional
(por compatibilidad con v21). En la versión 23+ del módulo, el valor predeterminado será "Obligatorio", lo que puede crear un cambio importante para los scripts existentes.
Este parámetro es nuevo en la versión 22 del módulo.
Type: | String |
Accepted values: | Mandatory, Optional, Strict |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Obliga al comando a ejecutarse sin solicitar la confirmación del usuario. Este cmdlet le pide confirmación solo si especifica el parámetro AllowDataLoss .
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HostNameInCertificate
Nombre de host que se va a usar al validar el certificado TLS/SSL de SQL Server.
Este parámetro es nuevo en la versión 22 del módulo.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Especifica el grupo de disponibilidad que este cmdlet conmuta por error.
Type: | AvailabilityGroup[] |
Position: | 1 |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Path
Especifica la ruta de acceso del grupo de disponibilidad que este cmdlet conmuta por error. Si no especifica este parámetro, este cmdlet usa la ubicación de trabajo actual.
Type: | String[] |
Position: | 1 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Script
Indica que este cmdlet devuelve un script de Transact-SQL que realiza la tarea que realiza este cmdlet.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TrustServerCertificate
Indica si el canal se cifrará al pasar la cadena de certificados para validar la confianza.
En la versión 22 del módulo, el valor predeterminado es $true
(por compatibilidad con v21). En la versión 23 y posteriores del módulo, el valor predeterminado será "$false", lo que puede crear un cambio importante para los scripts existentes.
Este parámetro es nuevo en la versión 22 del módulo.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entradas
Microsoft.SqlServer.Management.Smo.AvailabilityGroup[]
Puede pasar un grupo de disponibilidad a este cmdlet.