Condividi tramite


Esempio: Ripristino online di un file di lettura/scrittura (modello di recupero con registrazione completa)

Si applica a: SQL Server

Le informazioni contenute in questo articolo interessano i database di SQL Server basati sul modello di recupero con registrazione completa che includono più file o filegroup.

In questo esempio un database denominato adb, che utilizza il modello di recupero con registrazione completa, contiene tre filegroup. Il filegroup A è in lettura/scrittura, mentre i filegroup B e C sono di sola lettura. Inizialmente, tutti i filegroup sono online.

Il file a1 del filegroup A è danneggiato e l'amministratore del database decide di ripristinarlo, mantenendo online il database.

Nota

Il modello di recupero con registrazione minima non consente il ripristino online di dati di lettura/scrittura.

Sequenze di ripristino

La sintassi di una sequenza di ripristino online è la stessa di una sequenza di ripristino offline.

  1. Ripristino in linea del file a1.

    RESTORE DATABASE adb FILE = 'a1' FROM backup
    WITH NORECOVERY;
    

    A questo punto lo stato del file a1 è RESTORING e il filegroup A è offline.

  2. Al termine del ripristino del file, eseguire un nuovo backup del log per garantire l'acquisizione del punto in cui il file è passato offline.

    BACKUP LOG adb TO log_backup3;
    
  3. Ripristino online dei backup del log.

    Vengono ripristinati tutti i backup del log a partire dal backup del file ripristinato fino all'ultimo backup del log (log_backup3, eseguito nel passaggio precedente). Una volta ripristinato l'ultimo backup, viene recuperato il database.

    RESTORE LOG adb FROM log_backup1 WITH NORECOVERY;
    RESTORE LOG adb FROM log_backup2 WITH NORECOVERY;
    RESTORE LOG adb FROM log_backup3 WITH NORECOVERY;
    RESTORE DATABASE adb WITH RECOVERY;
    

    Il file a1 è ora online.

Esempi aggiuntivi