Remove-SqlAvailabilityDatabase

Quita una base de datos de disponibilidad de su grupo de disponibilidad.

Syntax

Remove-SqlAvailabilityDatabase
      [-Path] <String[]>
      [-Script]
      [-AccessToken <PSObject>]
      [-TrustServerCertificate]
      [-HostNameInCertificate <String>]
      [-Encrypt <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-SqlAvailabilityDatabase
      [-InputObject] <AvailabilityDatabase[]>
      [-Script]
      [-AccessToken <PSObject>]
      [-TrustServerCertificate]
      [-HostNameInCertificate <String>]
      [-Encrypt <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

El cmdlet Remove-SqlAvailabilityDatabase quita la base de datos de disponibilidad de su grupo de disponibilidad. El parámetro InputObject o Path especifica la base de datos de disponibilidad.

Si ejecuta este cmdlet en la instancia del servidor que hospeda la réplica principal, el cmdlet quita la base de datos principal y todas las bases de datos secundarias correspondientes del grupo de disponibilidad.

Si ejecuta este cmdlet en una instancia de servidor que hospeda una réplica secundaria, el cmdlet quita solo la base de datos secundaria local del grupo de disponibilidad. La base de datos secundaria ya no está unida al grupo de disponibilidad, pero otras copias de la base de datos siguen estando unidas.

Ejemplos

Ejemplo 1: Quitar una base de datos de un grupo de disponibilidad

PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16"

Este comando quita la base de datos de disponibilidad denominada Database16 del grupo de disponibilidad denominado MainAG. Este comando se ejecuta en la instancia del servidor que hospeda la réplica principal. Por lo tanto, quita la base de datos principal y todas sus bases de datos secundarias correspondientes del grupo de disponibilidad. La sincronización de datos ya no se produce para esta base de datos en ninguna réplica secundaria.

Ejemplo 2: Quitar todas las bases de datos de un grupo de disponibilidad

PS C:\> Get-ChildItem "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases" | Remove-SqlAvailabilityDatabase

Este comando obtiene todas las bases de datos de disponibilidad que pertenecen a MainAGy, a continuación, las pasa al cmdlet actual mediante el operador de canalización. El cmdlet actual quita cada base de datos de disponibilidad.

Ejemplo 3: Quitar una base de datos secundaria de un grupo de disponibilidad

PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16"

Este comando quita la base de datos secundaria denominada Database16 de la réplica secundaria hospedada por la instancia del servidor denominada SecondaryServer\Instance. La sincronización de datos con las bases de datos secundarias eliminadas se detiene. Este comando no afecta a la base de datos principal ni a ninguna otra base de datos secundaria.

Ejemplo 4: Creación de un script para quitar una base de datos de un grupo de disponibilidad

PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16" -Script

Este comando crea un script de Transact-SQL que quita la base de datos de disponibilidad denominada Database16 del grupo de disponibilidad denominado MainAG. El comando no realiza esta acción.

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 como se devuelve mediante la ejecución Get-AzAccessToken -ResourceUrl https://database.windows.netde .

Este parámetro es nuevo en la versión 22 del módulo.

Type:PSObject
Position:Named
Default value:None
Required:False
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
Required: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
Required:False
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. 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 para conectarse a una instancia de SQL Server habilitada para forzar el cifrado.

Este parámetro es nuevo en la versión 22 del módulo.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Especifica la base de datos de disponibilidad, como un objeto AvailabilityDatabase , que este cmdlet quita.

Type:AvailabilityDatabase[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Path

Especifica la ruta de acceso de una base de datos de disponibilidad que quita el cmdlet .

Type:String[]
Position:1
Default value:None
Required:True
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
Required:False
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+ 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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
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
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

Microsoft.SqlServer.Management.Smo.AvailabilityDatabase

Puede pasar una base de datos de disponibilidad a este cmdlet.