Rimuovere un database primario da un gruppo di disponibilità (SQL Server)

Questo argomento illustra come rimuovere il database primario e il database o i database secondari corrispondenti da un gruppo di disponibilità Always On usando SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL o PowerShell in SQL Server 2017SQL Server 2017.

Prima di iniziare

Prerequisiti e restrizioni

  • Questa attività può essere eseguita solo sulle repliche primarie. È necessario essere connessi all'istanza del server che ospita la replica primaria.

Sicurezza

Autorizzazioni

È necessaria l'autorizzazione ALTER AVAILABILITY GROUP nel gruppo di disponibilità, l'autorizzazione CONTROL AVAILABILITY GROUP, l'autorizzazione ALTER ANY AVAILABILITY GROUP o l'autorizzazione CONTROL SERVER.

Utilizzo di SQL Server Management Studio

Per rimuovere un database di disponibilità

  1. In Esplora oggetti connettersi all'istanza del server che ospita la replica primaria del database o dei database da rimuovere ed espandere l'albero del server.

  2. Espandere il nodo Disponibilità elevata Always On e il nodo Gruppi di disponibilità.

  3. Selezionare il gruppo di disponibilità ed espandere il nodo Database di disponibilità .

  4. Questo passaggio dipende dalla scelta di rimuovere uno o più database:

  5. Fare clic con il pulsante destro del mouse sul database o sui database selezionati e scegliere Rimuovere il database dal gruppo di disponibilità nel menu dei comandi.

  6. Nella finestra di dialogo Rimuovi i database dal gruppo di disponibilità scegliere OKper rimuovere tutti i database elencati. Se non si desidera rimuoverli tutti, scegliere Annulla.

Utilizzo di Transact-SQL

Per rimuovere un database di disponibilità

  1. Connettersi all'istanza del server che ospita la replica primaria.

  2. Utilizzare l'istruzione ALTER AVAILABILITY GROUP , come indicato di seguito:

    ALTER AVAILABILITY GROUP group_name REMOVE DATABASE availability_database_name

    dove group_name è il nome del gruppo di disponibilità e database_name è il nome di un database da aggiungere al gruppo.

    Nell'esempio seguente viene rimosso un database denominato Db6 dal gruppo di disponibilità MyAG.

    ALTER AVAILABILITY GROUP MyAG REMOVE DATABASE Db6;  
    

Utilizzo di PowerShell

Per rimuovere un database di disponibilità

  1. Passare alla directory (cd) dell'istanza del server che ospita la replica primaria.

  2. Usare il cmdlet Remove-SqlAvailabilityDatabase specificando il nome del database di disponibilità da rimuovere dal gruppo di disponibilità. Quando si è connessi all'istanza del server che ospita la replica primaria, il database primario e i database secondari corrispondenti vengono tutti rimossi dal gruppo di disponibilità.

    Ad esempio, il seguente comando rimuove il database di disponibilità MyDb9 dal gruppo di disponibilità denominato MyAg. Dal momento che il comando viene eseguito nell'istanza del server che ospita la replica primaria, il database primario e tutti i relativi database secondari corrispondenti vengono rimossi dal gruppo di disponibilità. La sincronizzazione dei dati non verrà più eseguita per questo database in nessuna replica secondaria.

    Remove-SqlAvailabilityDatabase `   
    -Path SQLSERVER:\Sql\PrimaryComputer\InstanceName\AvailabilityGroups\MyAg\Databases\MyDb9  
    
    Nota

    Per visualizzare la sintassi di un cmdlet, usare il cmdlet Get-Help nell'ambiente SQL Server 2017SQL Server 2017 PowerShell. Per altre informazioni, vedere Get Help SQL Server PowerShell.

    Per impostare e utilizzare il provider PowerShell per SQL Server

Completamento: Dopo la rimozione di un database di disponibilità da un gruppo di disponibilità

La rimozione di un database di disponibilità dal relativo gruppo di disponibilità termina la sincronizzazione dati tra il database primario precedente e i database secondari corrispondenti. Il database primario precedente rimane online. Ogni database secondario corrispondente viene posto nello stato RESTORING.

A questo punto sono disponibili modi alternativi per gestire un database secondario rimosso:

  • Se un determinato database secondario non è più necessario, è possibile eliminarlo.

    Per altre informazioni, vedere Eliminare un database.

  • Se si desidera accedere a un database secondario dopo che è stato rimosso dal gruppo di disponibilità, è possibile recuperare il database. Tuttavia, se si recupera un database secondario rimosso, saranno online due database indipendenti e divergenti con lo stesso nome. È necessario assicurarsi che i client possano accedere a uno solo di essi, di solito al database primario più recente.

    Per altre informazioni, vedere Recuperare un database senza ripristino dei dati (Transact-SQL).

Vedere anche

Panoramica di Gruppi di disponibilità Always On (SQL Server)
Rimuovere un database secondario da un gruppo di disponibilità (SQL Server)