Abilitare e disabilitare la funzionalità Gruppi di disponibilità AlwaysOn (SQL Server)

L'abilitazione di Gruppi di disponibilità AlwaysOn è un prerequisito per l'utilizzo di gruppi di disponibilità in un'istanza del server. Prima di poter creare e configurare un qualsiasi gruppo di disponibilità, la funzionalità Gruppi di disponibilità AlwaysOn deve essere stata abilitata in ogni istanza di SQL Server in cui sarà ospitata una replica di disponibilità per uno o più gruppi di disponibilità.

Nota importanteImportante

Se si elimina e si ricrea un cluster WSFC, è necessario disabilitare e riabilitare la funzionalità Gruppi di disponibilità AlwaysOn in ogni istanza di SQL Server in cui è ospitata una replica di disponibilità nel cluster WSFC originale.

  • **Prima di iniziare: **

    Prerequisiti

    Sicurezza

  • **Procedure: **

    • Determinare se la funzionalità Gruppi di disponibilità AlwaysOn è abilitata

    • Abilitare Gruppi di disponibilità AlwaysOn

    • Disabilitare Gruppi di disponibilità AlwaysOn

Prima di iniziare

Prerequisiti per l'abilitazione di Gruppi di disponibilità AlwaysOn

  • L'istanza del server deve trovarsi in un nodo WSFC (Windows Server Failover Clustering).

  • Nell'istanza del server deve essere in esecuzione un'edizione di SQL Server che supporta Gruppi di disponibilità AlwaysOn. Per ulteriori informazioni, vedere Funzionalità supportate dalle edizioni di SQL Server 2012.

  • Abilitare Gruppi di disponibilità AlwaysOn in una sola istanza del server per volta. Dopo aver abilitato Gruppi di disponibilità AlwaysOn, attendere il riavvio del servizio SQL Server prima di continuare con un'altra istanza del server.

Per informazioni sui prerequisiti aggiuntivi per la creazione e configurazione dei gruppi di disponibilità, vedere Prerequisiti, restrizioni e consigli per i gruppi di disponibilità AlwaysOn (SQL Server).

Sicurezza

Mentre la funzionalità Gruppi di disponibilità AlwaysOn è abilitata in un'istanza di SQL Server, l'istanza del server dispone del controllo completo nel cluster WSFC.

Autorizzazioni

È richiesta l'appartenenza al gruppo degli amministratori nel computer locale, nonché il controllo totale nel cluster WSCF. Quando si abilita AlwaysOn tramite PowerShell, aprire la finestra del prompt dei comandi utilizzando l'opzione Esegui come amministratore.

Richiede le autorizzazioni per la gestione e la creazione degli oggetti di Active Directory.

Icona freccia utilizzata con il collegamento Torna all'inizio[Inizio pagina]

Determinare se la funzionalità Gruppi di disponibilità AlwaysOn è abilitata

  • SQL Server Management Studio

  • Transact-SQL

  • PowerShell

Utilizzo di SQL Server Management Studio

Per determinare se la funzionalità Gruppi di disponibilità AlwaysOn è abilitata

  1. In Esplora oggetti fare clic con il pulsante destro del mouse sull'istanza del server e scegliere Proprietà.

  2. Nella finestra di dialogo Proprietà server scegliere la pagina Generale. Per la proprietà Is HADR Enabled è visualizzato uno dei valori seguenti:

    • True, se la funzionalità Gruppi di disponibilità AlwaysOn è abilitata

    • False, se la funzionalità Gruppi di disponibilità AlwaysOn è disabilitata.

Utilizzo di Transact-SQL

Per determinare se la funzionalità Gruppi di disponibilità AlwaysOn è abilitata

  1. Utilizzare l'istruzione SERVERPROPERTY seguente:

    SELECT SERVERPROPERTY ('IsHadrEnabled');
    

    L'impostazione della proprietà del server IsHadrEnabled indica se un'istanza di SQL Server è abilitata per Gruppi di disponibilità AlwaysOn, come indicato di seguito:

    • Se IsHadrEnabled = 1, la funzionalità Gruppi di disponibilità AlwaysOn è abilitata. 

    • Se IsHadrEnabled = 0, la funzionalità Gruppi di disponibilità AlwaysOn è disabilitata.

    [!NOTA]

    Per ulteriori informazioni sulla proprietà del server IsHadrEnabled, vedere SERVERPROPERTY (Transact-SQL).

Icona freccia utilizzata con il collegamento Torna all'inizio[Inizio pagina]

Utilizzo di PowerShell

Per determinare se la funzionalità Gruppi di disponibilità AlwaysOn è abilitata

  1. Impostare il valore predefinito (cd) sull'istanza del server in cui si desidera determinare se la funzionalità Gruppi di disponibilità AlwaysOn è abilitata.

  2. Eseguire il comando PowerShell Get-Item riportato di seguito:

    PS SQLSERVER:\SQL\NODE1\DEFAULT> get-item . | select IsHadrEnabled
    

    [!NOTA]

    Per visualizzare la sintassi di un cmdlet, utilizzare il cmdlet Get-Help nell'ambiente PowerShell di SQL Server. Per ulteriori informazioni, vedere Visualizzazione della Guida di SQL Server PowerShell.

Per impostare e utilizzare il provider PowerShell per SQL Server

Icona freccia utilizzata con il collegamento Torna all'inizio[Inizio pagina]

Abilitare Gruppi di disponibilità AlwaysOn

Per abilitare AlwaysOn mediante:

  • Gestione configurazione SQL Server

  • PowerShell

Utilizzo di Gestione configurazione SQL Server

Per abilitare Gruppi di disponibilità AlwaysOn

  1. Connettersi al nodo WSCF (Windows Server Failover Clustering) in cui è ospitata l'istanza di SQL Server nella quale si desidera abilitare Gruppi di disponibilità AlwaysOn.

  2. Nel menu Start scegliere Tutti i programmi, Microsoft SQL Server 2012 , Strumenti di configurazione, quindi fare clic su Gestione configurazione SQL Server.

  3. In Gestione configurazione SQL Server fare clic su Servizi di SQL Server, fare clic con il pulsante destro del mouse su SQL Server (<instance name>), dove <instance name> è il nome di un'istanza del server locale per cui si desidera abilitare Gruppi di disponibilità AlwaysOn, quindi scegliere Proprietà.

  4. Selezionare la scheda Disponibilità elevata AlwaysOn.

  5. Verificare che nel campo Nome cluster di failover Windows sia incluso il nome del cluster di failover locale. Se il campo è vuoto, questa istanza del server non supporta attualmente Gruppi di disponibilità AlwaysOn. Il computer locale non è un nodo del cluster, il cluster WSFC è stato chiuso, oppure si tratta di un'edizione di SQL Server 2012 che non supporta Gruppi di disponibilità AlwaysOn.

  6. Selezionare la casella di controllo Abilita gruppi di disponibilità AlwaysOn e scegliere OK.

    La modifica viene salvata da Gestione configurazione SQL Server. Successivamente, è necessario riavviare manualmente il servizio SQL Server. In questo modo è possibile scegliere un'ora per il riavvio che meglio soddisfa le esigenze aziendali. Al riavvio del servizio SQL Server, AlwaysOn sarà abilitato e la proprietà del server IsHadrEnabled sarà impostata su 1.

Icona freccia utilizzata con il collegamento Torna all'inizio[Inizio pagina]

Utilizzo di SQL Server PowerShell

Per abilitare AlwaysOn

  1. Impostare la directory (cd) su un'istanza del server che si desidera abilitare per Gruppi di disponibilità AlwaysOn.

  2. Utilizzare il cmdlet Enable-SqlAlwaysOn per abilitare Gruppi di disponibilità AlwaysOn.

    Per visualizzare la sintassi di un cmdlet, utilizzare il cmdlet Get-Help nell'ambiente PowerShell di SQL Server. Per ulteriori informazioni, vedere Visualizzazione della Guida di SQL Server PowerShell.

    [!NOTA]

    Per informazioni sulla modalità di controllo dell'eventuale riavvio del servizio SQL Server tramite il cmdlet Enable-SqlAlwaysOn, vedere Situazioni in cui un cmdlet comporta il riavvio del servizio SQL Server, più avanti in questo argomento.

Per impostare e utilizzare il provider PowerShell per SQL Server

Icona freccia utilizzata con il collegamento Torna all'inizio[Inizio pagina]

Esempio: Enable-SqlAlwaysOn

Con il comando di PowerShell seguente è possibile abilitare Gruppi di disponibilità AlwaysOn in un'istanza di SQL Server (Computer\Instance).

Enable-SqlAlwaysOn -Path SQLSERVER:\SQL\Computer\Instance

Disabilitare Gruppi di disponibilità AlwaysOn

  • Prima di disabilitare AlwaysOn:  

    Indicazioni

  • Per disabilitare AlwaysOn mediante:

    • Gestione configurazione SQL Server

    • PowerShell

  • Completamento: dopo la disabilitazione di AlwaysOn

Nota importanteImportante

Disabilitare AlwaysOn in una sola un'istanza del server per volta. Dopo aver disabilitato Gruppi di disponibilità AlwaysOn, attendere il riavvio del servizio SQL Server prima di continuare con un'altra istanza del server.

Consigli

Prima di disabilitare AlwaysOn su un'istanza del server, si consiglia di eseguire le operazioni seguenti:

  1. Se l'istanza del server sta attualmente ospitando la replica primaria di un gruppo di disponibilità che si desidera tenere, si consiglia di eseguire manualmente un failover sul gruppo di disponibilità a una replica secondaria sincronizzata, se possibile. Per ulteriori informazioni, vedere Eseguire un failover manuale pianificato di un gruppo di disponibilità (SQL Server).

  2. Rimuovere tutte le repliche secondarie locali. Per ulteriori informazioni, vedere Rimuovere una replica secondaria da un gruppo di disponibilità (SQL Server).

Utilizzo di Gestione configurazione SQL Server

Per disabilitare AlwaysOn

  1. Connettersi al nodo WSCF (Windows Server Failover Clustering) nel quale è ospitata l'istanza di SQL Server in cui si desidera disabilitare Gruppi di disponibilità AlwaysOn.

  2. Nel menu Start scegliere Tutti i programmi, Microsoft SQL Server 2012 , Strumenti di configurazione, quindi fare clic su Gestione configurazione SQL Server.

  3. In Gestione configurazione SQL Server fare clic su Servizi di SQL Server, fare clic con il pulsante destro del mouse su SQL Server (<instance name>), dove <instance name> è il nome di un'istanza del server locale per cui si desidera disabilitare Gruppi di disponibilità AlwaysOn, quindi scegliere Proprietà.

  4. Deselezionare la casella di controllo Abilita gruppi di disponibilità AlwaysOn nella scheda Disponibilità elevata AlwaysOn e scegliere OK.

    Con Gestione configurazione SQL Server è possibile salvare la modifica e riavviare il servizio SQL Server. Al riavvio del servizio SQL Server, AlwaysOn sarà disabilitato e la proprietà del server IsHadrEnabled sarà impostata su 0, per indicare che la funzionalità Gruppi di disponibilità AlwaysOn è disabilitata.

  5. Si consiglia di leggere le informazioni in Completamento: Dopo la disabilitazione di AlwaysOn, più avanti in questo argomento.

Icona freccia utilizzata con il collegamento Torna all'inizio[Inizio pagina]

Utilizzo di SQL Server PowerShell

Per disabilitare AlwaysOn

  1. Impostare la directory (cd) su un'istanza del server attualmente abilitata che si desidera disabilitare per Gruppi di disponibilità AlwaysOn.

  2. Utilizzare il cmdlet Disable-SqlAlwaysOn per abilitare Gruppi di disponibilità AlwaysOn.

    Ad esempio, questo comando disabilita la funzionalità Gruppi di disponibilità AlwaysOn di un'istanza di SQL Server (Computer\Instance). Il comando richiede il riavvio dell'istanza per cui verrà richiesta la conferma all'utente.

    Disable-SqlAlwaysOn -Path SQLSERVER:\SQL\Computer\Instance
    
    Nota importanteImportante

    Per informazioni sulla modalità di controllo dell'eventuale riavvio del servizio SQL Server tramite il cmdlet Disable-SqlAlwaysOn, vedere Situazioni in cui un cmdlet comporta il riavvio del servizio SQL Server, più avanti in questo argomento.

    Per visualizzare la sintassi di un cmdlet, utilizzare il cmdlet Get-Help nell'ambiente PowerShell di SQL Server. Per ulteriori informazioni, vedere Visualizzazione della Guida di SQL Server PowerShell.

Per impostare e utilizzare il provider PowerShell per SQL Server

Icona freccia utilizzata con il collegamento Torna all'inizio[Inizio pagina]

Completamento: Dopo la disabilitazione di AlwaysOn

Dopo avere disabilitato Gruppi di disponibilità AlwaysOn, è necessario riavviare l'istanza di SQL Server. Gestione configurazione SQL Server riavvia l'istanza del server automaticamente. Tuttavia, se è stato utilizzato il cmdlet Disable-SqlAlwaysOn, sarà necessario riavviare manualmente l'istanza del server. Per ulteriori informazioni, vedere Applicazione sqlservr.

Nell'istanza del server riavviata:

  • Poiché i database di disponibilità non vengono avviati insieme a SQL Server, non saranno accessibili.

  • L'unica istruzione AlwaysOn Transact-SQL supportata è DROP AVAILABILITY GROUP. CREATE AVAILABILITY GROUP, ALTER AVAILABILITY GROUP e le opzioni SET HADR di ALTER DATABASE non sono supportate.

  • I metadati di SQL Server e i dati di configurazione di Gruppi di disponibilità AlwaysOn in WSFC non sono interessati dalla disabilitazione di Gruppi di disponibilità AlwaysOn.

Se si disabilita in modo permanente Gruppi di disponibilità AlwaysOn su ogni istanza del server che ospita una replica di disponibilità per uno o più gruppi di disponibilità, si consiglia di completare i passaggi seguenti:

  1. Se le repliche di disponibilità locali non sono state rimosse prima di disabilitare AlwaysOn, eliminare ogni gruppo di disponibilità per il quale l'istanza del server ospita una replica di disponibilità. Per informazioni sull'eliminazione di un gruppo di disponibilità, vedere Rimuovere un gruppo di disponibilità (SQL Server).

  2. Per rimuovere i metadati rimanenti, eliminare ogni gruppo di disponibilità interessato su un'istanza del server che fa parte del cluster WSFC originale.

  3. Tutti i database primari continuano a essere accessibili a tutte le connessioni, ma la sincronizzazione dei dati tra i database primario e secondario viene arrestata.

  4. Per i database secondari viene impostato lo stato RESTORING. È possibile eliminare i database o ripristinarli tramite RESTORE WITH RECOVERY. Tuttavia, i database ripristinati non fanno più parte della sincronizzazione dei dati del gruppo di disponibilità.

Situazioni in cui un cmdlet comporta il riavvio del servizio SQL Server

In un'istanza del server attualmente in esecuzione, l'utilizzo di Enable-SqlAlwaysOn o Disable-SqlAlwaysOn per modificare l'impostazione AlwaysOn corrente può causare il riavvio del servizio SQL Server. Il comportamento del riavvio dipende dalle condizioni seguenti:

Specifica del parametro -NoServiceRestart

Specifica del parametro -Force

Riavvio del servizio SQL Server

No

No

Per impostazione predefinita. Tuttavia dal cmdlet è richiesto quanto segue:

Per completare l'azione, è necessario riavviare il servizio SQL Server per l'istanza del server '<nome_istanza>'. Continuare?

[Y] Sì  [N] No  [S] Sospendi  [?] Guida (l'impostazione predefinita è "Y"):

Se si specifica N o S, il servizio non viene riavviato.

No

Servizio riavviato.

No

Servizio non riavviato.

Servizio non riavviato.

Icona freccia utilizzata con il collegamento Torna all'inizio[Inizio pagina]

Vedere anche

Riferimento

SERVERPROPERTY (Transact-SQL)

Concetti

Panoramica di Gruppi di disponibilità AlwaysOn (SQL Server)