Riprendere un database di disponibilità (SQL Server)
È possibile riprendere un database di disponibilità sospeso in Always On gruppi di disponibilità usando SQL Server Management Studio, Transact-SQL o PowerShell in SQL Server 2014. Quando si riprende un database sospeso, viene attivato lo stato SYNCHRONIZING per il database. Con la ripresa del database primario vengono inoltre ripresi anche eventuali database secondari sospesi in seguito alla sospensione del database primario. Se un database secondario è stato sospeso in locale, dall'istanza del server che ospita la replica secondaria, è necessario riprendere tale database secondario in locale. Quando un database secondario e il database primario corrispondente sono nello stato SYNCHRONIZING, la sincronizzazione dei dati viene ripresa nel database secondario.
Nota
La sospensione e la ripresa di un database secondario AlwaysOn non incide direttamente sulla disponibilità del database primario. Tuttavia, la sospensione di un database secondario può avere un impatto sulle funzionalità di ridondanza e failover del database primario, finché il database secondario sospeso non viene ripreso. Questo comportamento è diverso rispetto al mirroring del database, in cui lo stato del mirroring risulta sospeso sia sul database mirror che sul database principale, finché il mirroring non viene ripreso. La sospensione di un database primario AlwaysOn comporta la sospensione dello spostamento di dati su tutti i database secondari corrispondenti, mentre le funzionalità di ridondanza e failover cessano per tale database finché il database primario non viene ripreso.
Prima di iniziare:
Per riprendere un database secondario tramite:
Prima di iniziare
Limitazioni e restrizioni
Un comando RESUME viene restituito non appena è stato accettato dalla replica che ospita il database di destinazione, ma la ripresa effettiva del database avviene in modo asincrono.
Prerequisiti
È necessario essere connessi all'istanza del server che ospita il database da riprendere.
Il gruppo di disponibilità deve essere online.
Il database primario deve essere online e disponibile.
Sicurezza
Autorizzazioni
È richiesta l'autorizzazione ALTER per il database.
È 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.
Uso di SQL Server Management Studio
Per riprendere un database secondario
In Esplora oggetti connettersi all'istanza del server che ospita la replica di disponibilità in cui si desidera riprendere un database ed espandere l'albero del server.
Espandere il nodo Disponibilità elevata AlwaysOn e il nodo Gruppi di disponibilità .
Espandere il gruppo di disponibilità.
Espandere il nodo Database di disponibilità , fare clic con il pulsante destro del mouse sul database e fare clic su Riprendi spostamento dati.
Nella finestra di dialogo Riprendi spostamento dati fare clic su OK.
Nota
Per riprendere database aggiuntivi in questo percorso di replica, ripetere i passaggi 4 e 5 per ogni database.
Uso di Transact-SQL
Per riprendere un database secondario sospeso in locale
Connettersi all'istanza del server che ospita la replica secondaria di cui si desidera riprendere il database.
Riprendere il database secondario usando l'istruzione ALTER DATABASEseguente:
ALTER DATABASE database_name SET HADR RESUME
Utilizzo di PowerShell
Per riprendere un database secondario
Impostare la directory (
cd
) sull'istanza del server che ospita la replica di cui si desidera riprendere il database. Per altre informazioni, vedere la sessione Prerequisitipiù indietro in questo argomento.Usare il cmdlet Resume-SqlAvailabilityDatabase per riprendere il gruppo di disponibilità.
Ad esempio, il seguente comando riprende la sincronizzazione dati per il database di disponibilità
MyDb3
nel gruppo di disponibilitàMyAg
.Resume-SqlAvailabilityDatabase -Path SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MyAg\Databases\MyDb3
Nota
Per visualizzare la sintassi di un cmdlet, usare il
Get-Help
cmdlet nell'ambiente SQL Server PowerShell. Per altre informazioni, vedere Get Help SQL Server PowerShell.
Per impostare e utilizzare il provider PowerShell per SQL Server