Recuperare i dati ripristinando un database SQL di Azure
Il test e la convalida della funzionalità e delle procedure di ripristino sono una parte essenziale di una strategia di recupero. Testando il processo di ripristino, è possibile verificare che i backup abbiano esito positivo. È anche possibile acquisire familiarità con il processo e le opzioni disponibili per il ripristino di un database. Questa familiarità consente di garantire un ripristino rapido e corretto dei dati quando è necessario.
Informazioni su come ripristinare un database di SQL Server di Azure dai backup automatizzati del database.
Che cosa è possibile ripristinare
I backup automatizzati nel database SQL di Azure copiano i database nei BLOB negli account di archiviazione con ridondanza geografica e accesso in lettura (RA-GRS) in base alla pianificazione specificata. Per ripristinare uno di questi backup, è necessario creare un nuovo database per contenere i dati ripristinati. Non è possibile ripristinare un database su un database esistente.
È possibile creare il nuovo database nello stesso server in cui il database SQL di Azure ha eseguito il backup o in un altro server con queste opzioni:
- Creare un nuovo database nello stesso server di database SQL ripristinato a un determinato momento nel tempo entro il periodo di conservazione.
- Creare un database nello stesso server di database SQL recuperato fino al momento dell'eliminazione per un database eliminato.
- Creare un nuovo database in qualsiasi server di database SQL nella stessa area recuperato fino al punto dei backup più recenti.
- Creare un nuovo database su qualsiasi server di database SQL in qualsiasi altra area ripristinato in base ai backup replicati più recenti.
Come funziona il ripristino
Per completare un ripristino, Azure riporta il database dall'account di archiviazione al server logico di database SQL di Azure specificato. In un ripristino temporizzato, il database SQL prosegue applicando i log delle transazioni al database ripristinato, fino al momento scelto.
La lunghezza di questo processo varia notevolmente. Dipende dalle dimensioni del database, dai log delle transazioni, dalla larghezza di banda di rete e dal numero di operazioni di ripristino simultanee. La maggior parte delle operazioni di ripristino viene completata in meno di 12 ore.
L'unico modo per verificare il tempo necessario per l'operazione di ripristino consiste nell'eseguire un ripristino di prova. È consigliabile eseguire occasionalmente ripristini di prova per cronometrarli e assicurarsi che la strategia di backup e ripristino completa funzioni come previsto.
Eseguire un ripristino temporizzato
È possibile eseguire i ripristini del database usando il portale di Azure, PowerShell o l'interfaccia della riga di comando di Azure. Se si esegue un ripristino temporizzato sul server di database SQL originale, è possibile scegliere:
- Sostituzione del database: per sostituire il database originale con quello ripristinato, specificare le stesse dimensioni di calcolo e lo stesso livello di servizio dell'originale. Rinominare quindi il database originale e assegnare al database ripristinato il nome originale usando i comandi
ALTER DATABASE
di T-SQL. - Recupero dei dati: per recuperare i dati dal database ripristinato per risolvere un errore, non è necessario rinominare il database originale e quello ripristinato. Usare invece i comandi T-SQL per estrarre i dati necessari dal database ripristinato. Inserirli quindi nel database originale.
Entrambe queste opzioni iniziano con il ripristino di un backup del database dalla risorsa di archiviazione. Per eseguire il recupero nel portale di Azure, selezionare il pulsante Ripristina nella pagina di panoramica del database e quindi specificare l'ora per il ripristino.
In PowerShell usare il cmdlet Restore-AzSqlDatabase
per eseguire i ripristini. Nell'interfaccia della riga di comando di Azure usare il comando az sql db restore
.
Ripristino di un database eliminato
Se un database viene eliminato erroneamente, è possibile ripristinarlo dal backup fino al momento dell'eliminazione usando il portale di Azure o PowerShell.
Nel portale passare alla pagina Panoramica del server di database. Quindi, nell'area Operazioni selezionare Database eliminati. È possibile specificare un momento preciso fino all'eliminazione e selezionare OK per eseguire il ripristino.
Eseguire un ripristino geografico
Il database SQL di Azure replica automaticamente i database di cui è stato eseguito il backup nei data center di altre aree. Se il database nell'area di origine non è disponibile, ad esempio a causa di un'interruzione del data center, è possibile eseguire il ripristino da una di queste copie di backup replicate. È possibile eseguire il ripristino fino al momento in cui il database SQL di Azure ha eseguito il backup. Il backup più recente potrebbe non essere stato completamente replicato nell'area, pertanto si potrebbero perdere alcune modifiche recenti.
Per eseguire un ripristino geografico nel portale di Azure, aggiungere un nuovo database a un server di database SQL di Azure, quindi selezionare Backup nell'elenco a discesa Seleziona origine e scegliere il backup da cui eseguire il ripristino.