Condividi tramite


Remove-SqlAvailabilityDatabase

Rimuove un database di disponibilità dal relativo gruppo di disponibilità.

Sintassi

ByPath (impostazione predefinita).

Remove-SqlAvailabilityDatabase
    [-Path] <String[]>
    [-Script]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByObject

Remove-SqlAvailabilityDatabase
    [-InputObject] <AvailabilityDatabase[]>
    [-Script]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Descrizione

Il cmdlet Remove-SqlAvailabilityDatabase rimuove il database di disponibilità dal relativo gruppo di disponibilità. Il parametro InputObject o Path consente di specificare il database di disponibilità.

Se si esegue questo cmdlet nell'istanza del server che ospita la replica primaria, il cmdlet rimuove il database primario e tutti i database secondari corrispondenti dal gruppo di disponibilità.

Se si esegue questo cmdlet in un'istanza del server che ospita una replica secondaria, il cmdlet rimuove solo il database secondario locale dal gruppo di disponibilità. Il database secondario non viene più aggiunto al gruppo di disponibilità, ma altre copie del database continuano a essere aggiunte.

Esempio

Esempio 1: Rimuovere un database da un gruppo di disponibilità

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

Questo comando rimuove il database di disponibilità denominato Database16 dal gruppo di disponibilità denominato MainAG. Questo comando viene eseguito nell'istanza del server che ospita la replica primaria. Pertanto, rimuove il database primario e tutti i relativi database secondari corrispondenti dal gruppo di disponibilità. La sincronizzazione dei dati non viene più eseguita per questo database in qualsiasi replica secondaria.

Esempio 2: Rimuovere tutti i database da un gruppo di disponibilità

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

Questo comando ottiene tutti i database di disponibilità che appartengono a MainAG e quindi li passa al cmdlet corrente usando l'operatore pipeline. Il cmdlet corrente rimuove ogni database di disponibilità.

Esempio 3: Rimuovere un database secondario da un gruppo di disponibilità

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

Questo comando rimuove il database secondario denominato Database16 dalla replica secondaria ospitata dall'istanza del server denominata SecondaryServer\Instance. La sincronizzazione dei dati nei database secondari rimossi viene arrestata. Questo comando non influisce sul database primario né su nessun altro database secondario.

Per riavviare la sincronizzazione dei dati in questo database secondario, aggiungerla nuovamente al gruppo di disponibilità eseguendo il cmdlet Add-SqlAvailabilityDatabase nella stessa istanza del server.

Esempio 4: Creare uno script per rimuovere un database da un gruppo di disponibilità

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

Questo comando crea uno script Transact-SQL che rimuove il database di disponibilità denominato Database16 dal gruppo di disponibilità denominato MainAG. Il comando non esegue questa azione.

Parametri

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False
Alias:cfr

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-InputObject

Specifica il database di disponibilità, come oggetto AvailabilityDatabase , rimosso da questo cmdlet.

Proprietà dei parametri

Tipo:

AvailabilityDatabase[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ByObject
Posizione:2
Obbligatorio:True
Valore dalla pipeline:True
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Path

Specifica il percorso di un database di disponibilità che viene rimosso dal cmdlet.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ByPath
Posizione:2
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Script

Indica che questo cmdlet restituisce un Transact-SQL script che esegue l'attività eseguita da questo cmdlet.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False
Alias:Wi

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.

Input

Microsoft.SqlServer.Management.Smo.AvailabilityDatabase

È possibile passare un database di disponibilità a questo cmdlet.