Share via


Procedura: Ripristino di file e filegroup (Transact-SQL)

In questo argomento viene illustrato il ripristino di file e filegroup.

Nota importanteImportante

L'amministratore di sistema che esegue il ripristino di file e di filegroup deve essere l'unico utente attualmente collegato al database da ripristinare.

Per ripristinare file e filegroup

  1. Eseguire l'istruzione RESTORE DATABASE per ripristinare il backup di file e filegroup, specificando:

    • Nome del database da ripristinare.

    • Dispositivo di backup da cui verrà ripristinato il backup completo del database.

    • Clausola FILE per ogni file da ripristinare.

    • Clausola FILEGROUP per ogni filegroup da ripristinare.

    • Clausola NORECOVERY. Se i file non sono stati modificati dopo la creazione del backup, specificare la clausola RECOVERY.

    Nota importanteImportante

    Per ripristinare un database crittografato, è necessario accedere al certificato o alla chiave asimmetrica utilizzata per eseguirne la crittografia. Non è possibile effettuare l'operazione di ripristino del database senza almeno uno di questi due elementi. Di conseguenza, il certificato utilizzato per crittografare la chiave di crittografia del database deve essere conservato fino a quando il backup è necessario. Per ulteriori informazioni, vedere Certificati SQL Server e chiavi simmetriche.

  2. Se i file sono stati modificati dopo la creazione del backup, eseguire l'istruzione RESTORE LOG per applicare il backup del log delle transazioni, specificando:

    • Nome del database a cui verrà applicato il log delle transazioni.

    • Dispositivo di backup da cui verrà ripristinato il backup del log delle transazioni.

    • Clausola NORECOVERY se è disponibile un altro backup del log delle transazioni successivo a quello corrente. In caso contrario, specificare la clausola RECOVERY.

      Nei backup del log delle transazioni, se applicati, deve essere incluso il periodo di tempo intercorso dall'ultimo backup di file e filegroup fino alla fine del log, a meno che non vengano ripristinati TUTTI i file.

[!NOTA]

Una volta ripristinato un database di SQL Server 2005 o SQL Server 2000 a SQL Server 2008, il database viene reso immediatamente disponibile e viene quindi aggiornato automaticamente. Se il database include indici full-text, questi vengono importati, reimpostati o ricostruiti dal processo di aggiornamento, a seconda dell'impostazione della proprietà del server upgrade_option. Se l'opzione di aggiornamento è impostata sull'importazione (upgrade_option = 2) o sulla ricostruzione (upgrade_option = 0), gli indici full-text non saranno disponibili durante l'aggiornamento. A seconda della quantità di dati indicizzati, l'importazione può richiedere diverse ore, mentre la ricostruzione può risultare dieci volte più lunga. Si noti inoltre che quando l'opzione di aggiornamento è impostata sull'importazione, gli indici full-text associati vengono ricostruiti se non è disponibile un catalogo full-text. Per modificare l'impostazione della proprietà del server upgrade_option, utilizzare sp_fulltext_service.

Esempio

In questo esempio vengono ripristinati i file e i filegroup per il database MyNwind. Verranno inoltre applicati due log delle transazioni per ripristinare il database all'ora corrente.

USE master
GO
-- Restore the files and filesgroups for MyNwind.
RESTORE DATABASE MyNwind
   FILE = 'MyNwind_data_1',
   FILEGROUP = 'new_customers',
   FILE = 'MyNwind_data_2',
   FILEGROUP = 'first_qtr_sales'
   FROM MyNwind_1
   WITH NORECOVERY
GO
-- Apply the first transaction log backup.
RESTORE LOG MyNwind
   FROM MyNwind_log1
   WITH NORECOVERY
GO
-- Apply the last transaction log backup.
RESTORE LOG MyNwind
   FROM MyNwind_log2
   WITH RECOVERY
GO

Vedere anche

Riferimento

Concetti