Panoramica del ripristino e del recupero (SQL Server)
Per ripristinare un database SQL Server da un errore, un amministratore del database deve ripristinare un set di backup SQL Server in una sequenza di ripristino logicamente corretta e significativa. SQL Server ripristino e ripristino supporta il ripristino dei dati da backup di un intero database, un file di dati o una pagina dati, come indicato di seguito:
Database ( ripristino di database completo)
L'intero database viene ripristinato e recuperato e il database resta offline per la durata delle operazioni di ripristino e di recupero.
File di dati ( ripristino del file)
Un file di dati o un set di file viene ripristinato e recuperato. Durante un ripristino del file, i filegroup che includono i file vengono impostati automaticamente come offline per la durata del ripristino. Qualsiasi tentativo di accedere a un filegroup offline provoca un errore.
Pagina di dati ( ripristino di pagina)
Nel modello di recupero con registrazione completa o con registrazione minima delle operazioni bulk è possibile ripristinare singoli database. Le operazioni di ripristino della pagina possono essere effettuate in qualsiasi database, indipendentemente dal numero di filegroup.
SQL Server il backup e il ripristino funzionano in tutti i sistemi operativi supportati, indipendentemente dal fatto che siano sistemi a 64 bit o a 32 bit. Per informazioni sui sistemi operativi supportati, vedere Requisiti hardware e software per l'installazione di SQL Server 2014. Per informazioni sul supporto per i backup delle versioni precedenti di SQL Server, vedere la sezione "Supporto compatibilità" di RESTORE (Transact-SQL).
Contenuto dell'argomento
Panoramica degli scenari di ripristino
Uno scenario di ripristino in SQL Server è il processo di ripristino dei dati da uno o più backup e quindi il ripristino del database. Gli scenari di ripristino supportati dipendono dal modello di ripristino del database e dall'edizione di SQL Server.
Nella tabella seguente vengono descritti i possibili scenari di ripristino supportati per modelli di recupero diversi.
scenario di ripristino | Nel modello di recupero con registrazione minima | Nel modello di recupero con registrazione completa o con registrazione minima delle operazioni bulk |
---|---|---|
ripristino di database completo | Si tratta della strategia di ripristino standard. Un ripristino di database completo può comportare semplicemente il ripristino e il recupero di un backup completo del database. In alternativa, tale tipo di ripristino può comportare il ripristino di un backup completo del database seguito dal ripristino e dal recupero di un backup differenziale. Per altre informazioni, vedere Complete Database Restores (Simple Recovery Model). |
Si tratta della strategia di ripristino standard. Un ripristino di database completo comporta il ripristino di un backup completo del database e, facoltativamente, di un backup differenziale, se disponibile, seguito dal ripristino di tutti i successivi backup del log, in sequenza. Il ripristino di database completo viene completato tramite il recupero dell'ultimo backup del log e il suo ripristino (RESTORE WITH RECOVERY). Per altre informazioni, vedere Complete Database Restores (Full Recovery Model) |
File restore * | Consente di ripristinare uno o più file di sola lettura danneggiati senza ripristinare l'intero database. È disponibile solo se il database contiene almeno un filegroup di sola lettura. | Consente di ripristinare uno o più file, senza ripristinare l'intero database. Il ripristino dei file può essere eseguito mentre il database è offline o, per alcune edizioni di SQL Server, mentre il database rimane online. Durante un'operazione di ripristino del file, i filegroup che includono i file che vengono ripristinati sono sempre offline. |
Ripristino di pagine | Non applicabile | Consente di ripristinare una o più pagine danneggiate. Il ripristino delle pagine può essere eseguito mentre il database è offline o, per alcune edizioni di SQL Server, mentre il database rimane online. Durante un'operazione di ripristino della pagina, le pagine che vengono ripristinate sono sempre offline. Perché la pagina sia aggiornata rispetto al file di log corrente, è necessario che sia disponibile una catena non interrotta di backup del log, fino al file di log corrente, e che i backup vengano tutti applicati. Per altre informazioni, vedere Ripristinare pagine (SQL Server). |
Ripristino a fasi * | Consente di ripristinare e recuperare il database in varie fasi a livello di filegroup, partendo dal filegroup primario e da tutti i filegroup secondari di lettura/scrittura. | Consente di ripristinare e recuperare il database in varie fasi a livello di filegroup, partendo dal filegroup primario. |
* Il ripristino online è supportato solo nell'edizione Enterprise.
Indipendentemente dal modo in cui i dati vengono ripristinati, prima che sia possibile ripristinare un database, il motore di database SQL Server garantisce che l'intero database sia coerente logicamente. Se, ad esempio, si ripristina un file, non è possibile recuperarlo e attivare la modalità online finché non è stato eseguito un rollforward sufficiente a garantirne la coerenza con il database.
Vantaggi di un ripristino del file o della pagina
Il ripristino e il recupero di file o pagine, anziché dell'intero database, offrono i vantaggi seguenti:
Il ripristino di una quantità minore di dati consente di ridurre il tempo necessario per la copia e il recupero.
In SQL Server il ripristino di file o pagine potrebbe consentire ad altri dati nel database di rimanere online durante l'operazione di ripristino.
Modelli di recupero e operazioni di ripristino supportate
Le operazioni di ripristino disponibili per un database variano in base al relativo modello di recupero. Nella tabella seguente vengono riepilogati i casi e la misura in cui ognuno dei modelli di recupero supporta uno scenario di ripristino specifico.
Operazione di ripristino | Modello di recupero con registrazione completa | Modello di recupero con registrazione minima delle operazioni bulk | Modello di recupero con registrazione minima |
---|---|---|---|
Recupero dati | Recupero completo (se il log è disponibile). | Rischio parziale di perdita di dati. | Tutti i dati successivi all'ultimo backup completo o differenziale vanno perduti. |
Ripristino temporizzato | Qualsiasi periodo di tempo coperto dai backup del log. | Non consentito se il backup del log contiene modifiche con registrazione minima delle operazioni bulk. | Non supportato. |
File restore * | Supporto completo. | A volte.** | Disponibile solo per i file secondari di sola lettura. |
Page restore * | Supporto completo. | A volte.** | Nessuno. |
Ripristino a fasi (a livello di filegroup) * | Supporto completo. | A volte.** | Disponibile solo per i file secondari di sola lettura. |
*Disponibile solo nell'edizione Enterprise di SQL Server
** Per le condizioni necessarie, vedere la sezione relativa alle Restrizioni relative al ripristino in base al modello di recupero con registrazione minimapiù avanti in questo argomento.
Importante
Indipendentemente dal modello di ripristino di un database, non è possibile ripristinare un backup SQL Server da una versione di SQL Server precedente alla versione che ha creato il backup.
Scenari di ripristino nel modello di recupero con registrazione minima
Il modello di recupero con registrazione minima impone le restrizioni seguenti sulle operazioni di ripristino:
Il ripristino del file e il ripristino a fasi sono disponibili solo per gruppi di file secondari in modalità di sola lettura. Per informazioni su questi scenari di ripristino, vedere Ripristino file (modello di ripristino semplice) e Ripristino a fasi (SQL Server).
Il ripristino della pagina non è consentito.
Il ripristino temporizzato non è consentito.
Se una o più di queste restrizioni non sono appropriate per le proprie esigenze di recupero, valutare se utilizzare il modello di recupero con registrazione completa. Per altre informazioni, vedere Panoramica del backup (SQL Server).
Importante
Indipendentemente dal modello di ripristino di un database, non è possibile ripristinare un backup SQL Server da una versione di SQL Server precedente alla versione che ha creato il backup.
Ripristino nel modello di recupero con registrazione minima delle operazioni bulk
In questa sezione vengono fornite informazioni sul ripristino proprie del modello di recupero con registrazione minima delle operazioni bulk da intendersi esclusivamente come integrazione del modello di recupero con registrazione completa.
Nota
Per un'introduzione al modello di ripristino registrato in blocco, vedere Log delle transazioni (SQL Server).
In linea generale, il modello di recupero con registrazione minima delle operazioni bulk è simile al modello di recupero con registrazione completa e le informazioni fornite per quest'ultimo si applicano a entrambi. Tuttavia, il recupero temporizzato e il ripristino in linea sono influenzati dal modello di recupero con registrazione minima delle operazioni bulk.
Restrizioni relative al recupero temporizzato
Se un backup del log eseguito utilizzando il modello di recupero con registrazione minima delle operazioni bulk contiene modifiche con registrazione minima delle operazioni bulk, il recupero temporizzato non è consentito. Se si tenta di eseguire il recupero temporizzato in un backup del log che contiene modifiche con registrazione minima delle operazioni bulk, l'operazione di ripristino non verrà eseguita correttamente.
Restrizioni relative al ripristino online
Una sequenza di ripristino in linea funziona solo se vengono soddisfatte le condizioni seguenti:
Tutti i backup del log necessari devono essere eseguiti prima dell'avvio della sequenza di ripristino.
È necessario eseguire un backup delle modifiche bulk prima di avviare la sequenza del ripristino online.
Se nel database sono presenti modifiche bulk, tutti i file devono essere online oinattivi. Questo significa che non è più parte del database.
Se queste condizioni non vengono soddisfatte, la sequenza del ripristino in linea non riesce.
Nota
È consigliabile passare al modello di recupero con registrazione completa prima di avviare un ripristino online. Per altre informazioni, vedere Modelli di ripristino (SQL Server).
Per informazioni su come eseguire un ripristino online, vedere Ripristino online (SQL Server).
Database Recovery Advisor (SQL Server Management Studio)
Tramite Database Recovery Advisor viene semplificata la costruzione di piani di ripristino mediante i quali vengono implementate ottime sequenze di ripristino corrette. Molti problemi noti di ripristino del database sono stati risolti e sono stati apportati molti miglioramenti richiesti dai clienti. Di seguito sono riportati i miglioramenti principali introdotti da Database Recovery Advisor:
Algoritmo del piano di ripristino: L'algoritmo usato per costruire piani di ripristino è migliorato in modo significativo, in particolare per scenari di ripristino complessi. Molti casi perimetrali, inclusi gli scenari di fork nei ripristini temporizzato, vengono gestiti in modo più efficiente rispetto alle versioni precedenti di SQL Server.
Ripristino temporizzato: Database Recovery Advisor semplifica notevolmente il ripristino di un database in un determinato momento. Tramite una cronologia di backup visiva viene migliorato in modo significativo il supporto per i ripristini temporizzati. Tramite questa cronologia visiva è possibile identificare un momento appropriato come punto di recupero di destinazione per il ripristino di un database. Tramite la cronologia viene semplificato l'attraversamento di un percorso di recupero con fork, cioè un percorso che si estende su più fork di recupero. In un piano di ripristino temporizzato specificato sono inclusi automaticamente i backup rilevanti per il ripristino al punto nel tempo previsto (data e ora). Per altre informazioni, vedere Ripristino di un database di SQL Server fino a un punto specifico all'interno di un backup (modello di recupero con registrazione completa).
Per altre informazioni, vedere l'articolo relativo a Database Recovery Advisor, vedere i blog di gestione di SQL Server seguenti:
Contenuto correlato
No.