Esempio: Ripristino non in linea del filegroup primario e di un altro filegroup (modello di recupero con registrazione completa)
Le informazioni contenute in questo argomento sono rilevanti solo per i database basati sul modello di recupero con registrazione completa che includono più filegroup.
In questo esempio un database denominato adb
contiene tre filegroup. I filegroup A
e C
sono di lettura/scrittura, mentre il filegroup B
è di sola lettura. Il filegroup primario e il filegroup B
sono danneggiati, mentre i filegroup A
e C
sono integri. Prima dell'emergenza, tutti i filegroup erano in linea.
L'amministratore del database decide di ripristinare e recuperare il filegroup primario e il filegroup B
. Dato che il database utilizza il modello di recupero con registrazione completa, prima dell'avvio del ripristino è necessario eseguire un backup della parte finale del log per il database. Non appena il database è in linea, viene attivata automaticamente la modalità in linea per i filegroup A
e C
.
[!NOTA] La sequenza di ripristino non in linea prevede un numero di passaggi inferiore rispetto al ripristino in linea di un file di sola lettura. Per un esempio, vedere Esempio: Ripristino in linea di un file di sola lettura (modello di recupero con registrazione completa). L'intero database, tuttavia, rimane in modalità non in linea per tutta la durata della sequenza.
Backup della parte finale del log
Prima di ripristinare il database, è necessario che l'amministratore del database esegua il backup della parte finale del log. Dato che il database è danneggiato, la creazione di tale backup richiede l'utilizzo dell'opzione NO_TRUNCATE:
BACKUP LOG adb TO tailLogBackup
WITH NORECOVERY, NO_TRUNCATE
Il backup della parte finale del log è l'ultimo backup applicato nelle sequenze di ripristino seguenti.
Sequenza di ripristino
Per ripristinare il filegroup primario e il filegroup B
, l'amministratore del database utilizza una sequenza di ripristino senza l'opzione PARTIAL, come illustrato di seguito:
RESTORE DATABASE adb FILEGROUP='Primary' FROM backup1
WITH NORECOVERY
RESTORE DATABASE adb FILEGROUP='B' FROM backup2
WITH NORECOVERY
RESTORE LOG adb FROM backup3 WITH NORECOVERY
RESTORE LOG adb FROM backup4 WITH NORECOVERY
RESTORE LOG adb FROM backup5 WITH NORECOVERY
RESTORE LOG adb FROM tailLogBackup WITH RECOVERY
Per i file non ripristinati viene attivata automaticamente la modalità in linea. Tutti i filegroup sono ora in linea.
Vedere anche
Concetti
Esecuzione di ripristini in linea
Esecuzione di ripristini a fasi
Esecuzione di operazioni di ripristino di file (modello di recupero con registrazione completa)
Applicazione dei backup del log delle transazioni
Altre risorse
Esempi di sequenze di ripristino in scenari diversi
RESTORE (Transact-SQL)