Test-SqlAvailabilityGroup
Evalúa el estado de un grupo de disponibilidad.
Sintaxis
Test-SqlAvailabilityGroup
[-ShowPolicyDetails]
[-AllowUserPolicies]
[-NoRefresh]
[[-Path] <String[]>]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Test-SqlAvailabilityGroup
[-ShowPolicyDetails]
[-AllowUserPolicies]
[-NoRefresh]
[-InputObject] <AvailabilityGroup[]>
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
El cmdlet Test-SqlAvailabilityGroup evalúa el estado de un grupo de disponibilidad.
Este cmdlet evalúa las directivas de administración basadas en directivas de SQL Server.
Para ejecutar este cmdlet, debe tener CONNECT
derechos de usuario , VIEW SERVER STATE
y VIEW ANY DEFINITION
.
Module requirements: version 21+ on PowerShell 5.1; version 22+ on PowerShell 7.x.
Ejemplos
Ejemplo 1: Evaluación del estado de un grupo de disponibilidad
PS C:\> Test-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\Server\InstanceName\AvailabilityGroups\MainAG"
Este comando evalúa el estado del grupo de disponibilidad denominado MainAG
.
El comando devuelve un resumen.
Ejemplo 2: Evaluación del estado de todos los grupos de disponibilidad
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Server\InstanceName\AvailabilityGroups" | Test-SqlAvailabilityGroup
Este comando obtiene todos los grupos de disponibilidad que tienen réplicas de disponibilidad en la ubicación especificada en el proveedor SQLSERVER: . El comando los pasa al cmdlet actual mediante el operador de canalización. Ese cmdlet evalúa el estado de cada grupo de disponibilidad.
Ejemplo 3: Mostrar resultados para cada directiva de un grupo de disponibilidad
PS C:\> Test-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\Server\InstanceName\AvailabilityGroups\MainAG" -ShowPolicyDetails
Este comando evalúa el estado del grupo de disponibilidad denominado MainAG
.
Este comando especifica el parámetro ShowPolicyDetails.
Por lo tanto, muestra los resultados de evaluación de cada directiva de administración basada en directivas que se ejecutó.
Ejemplo 4: Mostrar los resultados de las directivas definidas por el usuario de un grupo de disponibilidad
PS C:\> Test-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\Server\InstanceName\AvailabilityGroups\MainAG" -AllowUserPolicies
Este comando evalúa el estado del grupo de disponibilidad denominado MainAG
.
El comando incluye directivas definidas por el usuario en esta evaluación.
Ejemplo 5: Obtener grupos que tienen un estado de error
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Server\InstanceName\AvailabilityGroups" | Test-SqlAvailabilityGroup | Where-Object { $_.HealthState -eq "Error" }
Este comando obtiene todos los grupos de disponibilidad que tienen réplicas de disponibilidad en la ubicación especificada en el proveedor SQLSERVER: . El comando los pasa al cmdlet actual mediante el operador de canalización. Ese cmdlet evalúa el estado de cada grupo de disponibilidad. El comando pasa esos resultados al cmdlet Where-Object , que devuelve resultados basados en la propiedad HealthState .
Parámetros
-AccessToken
El 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
(vea referencias en la parte inferior de esta página).
En escenarios comunes, este parámetro se obtiene con algo parecido (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token
(requiere el módulo Az.Accounts)
El tipo del parámetro puede ser string
(token de texto no cifrado) o SecureString
(token cifrado, tal como lo devuelve la versión más reciente del cmdlet Get-AzAccessToken).
Tipo: | PSObject |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-AllowUserPolicies
Indica que este cmdlet prueba las directivas de usuario que se encuentran en las categorías de directivas de grupos de disponibilidad AlwaysOn.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Confirm
Le pide confirmación antes de ejecutar el cmdlet.
Tipo: | SwitchParameter |
Alias: | cf |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | 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", que puede crear un cambio importante para los scripts existentes.
Este parámetro es nuevo en la versión 22 del módulo.
Tipo: | String |
Valores aceptados: | Mandatory, Optional, Strict |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-HostNameInCertificate
Nombre de host que se va a usar al validar el certificado TLS/SSL de SQL Server. Debe pasar este parámetro si la instancia de SQL Server está habilitada para Forzar cifrado y desea conectarse a una instancia mediante el nombre de host o el nombre corto. Si se omite este parámetro, es necesario pasar el nombre de dominio completo (FQDN) a -ServerInstance es necesario para conectarse a una instancia de SQL Server habilitada para Forzar cifrado.
Este parámetro es nuevo en la versión 22 del módulo.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-InputObject
Especifica una matriz de grupos de disponibilidad, como objetos AvailabilityGroup. Este cmdlet evalúa el estado de los grupos de disponibilidad que especifica este parámetro.
Tipo: | AvailabilityGroup[] |
Posición: | 1 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-NoRefresh
Indica que no actualizará los objetos especificados por el parámetro Path o InputObject .
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Path
Especifica la ruta de acceso del grupo de disponibilidad que evalúa este cmdlet. Si no especifica este parámetro, este cmdlet usa la ubicación de trabajo actual.
Tipo: | String[] |
Posición: | 1 |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ShowPolicyDetails
Indica que este cmdlet muestra el resultado de cada evaluación de directiva que realiza. El cmdlet devuelve un objeto por evaluación de directiva. Cada objeto de directiva incluye los resultados de la evaluación. Esta información incluye si la directiva se ha pasado o no, el nombre de la directiva y la categoría de directiva.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-TrustServerCertificate
Indica si el canal se cifrará mientras se pasa 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+ del módulo, el valor predeterminado será "$false", que puede crear un cambio importante para los scripts existentes.
Este parámetro es nuevo en la versión 22 del módulo.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-WhatIf
Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.
Tipo: | SwitchParameter |
Alias: | wi |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
Entradas
Microsoft.SqlServer.Management.Smo.AvailabilityGroup[]