Backup e ripristino di cataloghi full-text
Questa versione di Microsoft SQL Server consente di utilizzare le istruzioni BACKUP e RESTORE per eseguire il backup e il ripristino di cataloghi full-text con le stesse modalità utilizzate per i dati di file di database.
Per eseguire il backup di cataloghi full-text, utilizzare l'istruzione BACKUP:
BACKUP DATABASE database_name
TO backup_device
Ogni catalogo full-text viene gestito come un file e incluso nel set di file di database di cui viene eseguito il backup. Durante il processo di backup non è consentito eliminare o aggiungere cataloghi full-text.
In SQL Server, durante un'operazione BACKUP, vengono solitamente eseguite le attività seguenti:
- Il servizio Microsoft Full-Text Engine for SQL Server (MSFTESQL) viene temporaneamente sospeso e tutte le modifiche in sospeso al catalogo full-text vengono scaricate su disco. SQL Server interrompe inoltre tutte le attività di scrittura sul catalogo e accoda tutte le modifiche non ancora elaborate all'avvio del backup nel registro di notifica, in modo che sia possibile eseguirne il commit nei cataloghi full-text al completamento del backup.
Lo stato del catalogo è persistente sul disco. A questo punto è ancora possibile eseguire query sul catalogo. - Viene eseguito il backup di tutti i dati dei cataloghi full-text e delle tabelle, del registro di rilevamento modifiche e dei metadati.
- Viene eseguito il backup di tutti i dati, nel log delle transazioni, registrati da quando è stato avviato il processo di backup.
- Vengono ripresi il servizio MSFTESQL e il popolamento degli indici full-text.
Per ulteriori informazioni sull'esecuzione del backup dei dati di database, vedere Creazione di backup completi e differenziali per un database di SQL Server. Per ulteriori informazioni sull'istruzione BACKUP in Transact-SQL, vedere BACKUP (Transact-SQL).
Dopo il backup dei cataloghi full-text, SQL Server avvia il servizio MSFTESQL, esegue il commit degli aggiornamenti in coda nel registro di notifica e riprende l'esecuzione delle regolari operazioni.
Oltre al backup completo dei dati di database e dei cataloghi full-text, è possibile eseguire il backup dei cataloghi full-text nei modi seguenti:
Backup differenziali
Per eseguire il backup delle modifiche nei cataloghi full-text unitamente ai dati di database dopo l'ultimo backup completo, specificare WITH DIFFERENTIAL nel comando BACKUP.L'istruzione seguente, ad esempio, esegue il backup delle modifiche, dopo l'ultimo backup completo, nei dati di database, inclusi i cataloghi full-text.
BACKUP DATABASE database_name TO backup_device WITH DIFFERENTIAL
Viene eseguito il backup solo dei file modificati o aggiunti dopo l'ultimo backup completo. Se dopo l'esecuzione dell'ultimo backup completo sono stati eliminati dei file, questi ultimi verranno eliminati durante il processo di ripristino. Le modifiche che si verificano durante il backup vengono accodate al registro di notifica. Dopo il backup di tutti i file, ne viene quindi eseguito il commit.
I backup differenziali non sono supportati per i cataloghi full-text nei file system FAT32.
Backup dei cataloghi full-text
Per eseguire il backup solo del catalogo full-text (e non dei dati di database), specificare la clausola FILE nel comando BACKUP.L'istruzione seguente, ad esempio, esegue il backup solo del catalogo full-text fulltext_cat.
BACKUP DATABASE database_name FILE = 'sysft_fulltext_cat' TO backup_device
[!NOTA] Al nome file del catalogo full-text viene aggiunto il prefisso 'sys'.
Per eseguire il backup solo del filegroup nel quale sono archiviati più cataloghi full-text, specificare la clausola FILEGROUP nel comando BACKUP.
L'istruzione seguente, ad esempio, esegue il backup solo del filegroup fulltext_catFG.
BACKUP DATABASE database_name FILEGROUP = 'fulltext_catFG' TO backup_device
Backup differenziale di cataloghi full-text
Per eseguire il backup solo delle modifiche in un catalogo full-text, specificare la clausola FILE e WITH DIFFERENTIAL nel comando BACKUP.L'istruzione seguente, ad esempio, esegue il backup delle modifiche, dopo l'ultimo backup completo, nel catalogo full-text fulltext_cat.
BACKUP DATABASE database_name FILE = 'sysft_fulltext_cat' TO backup_device WITH DIFFERENTIAL
Per eseguire il backup solo delle modifiche in tutti i cataloghi full-text archiviati in un filegroup, specificare la clausola FILEGROUP e WITH DIFFERENTIAL nel comando BACKUP.
L'istruzione seguente, ad esempio, esegue il backup delle modifiche, dopo l'ultimo backup completo, in tutti i cataloghi full-text archiviati nel filegroup fulltext_catFG.
BACKUP DATABASE database_name FILEGROUP = 'fulltext_catFG' TO backup_device WITH DIFFERENTIAL
Per ripristinare cataloghi full-text, utilizzare il comando RESTORE.
RESTORE DATABASE database_name
FROM backup_device
All'esecuzione del comando, i dati di cui è stato eseguito il backup, inclusi quelli dei cataloghi full-text, vengono ripristinati dal percorso di backup su disco.
Per ulteriori informazioni sull'istruzione RESTORE in Transact-SQL, vedere RESTORE (Transact-SQL).
Oltre al ripristino completo dei dati di database e dei cataloghi full-text, è possibile eseguire il ripristino dei cataloghi full-text nei modi seguenti:
Ripristino su un percorso alternativo
Per specificare un percorso alternativo a quello della directory principale del catalogo full-text, specificare WITH MOVE nel comando RESTORE.L'istruzione seguente, ad esempio, ripristina il catalogo full-text fulltext_cat nella directory F:\FtCat.
RESTORE DATABASE AdventureWorks FROM backup_device WITH MOVE 'sysft_fulltext_cat' TO 'F:\FtCat'
Quando viene specificato WITH MOVE, SQL Server aggiorna i metadati per il catalogo full-text nelle viste del catalogo sys.fulltext_catalogs e sys.databases_files utilizzando il nuovo percorso della directory principale del catalogo. I metadati del catalogo full-text vengono aggiornati allo stesso modo e contemporaneamente agli altri file di dati del database e delle tabelle.
È inoltre possibile specificare WITH MOVE per ripristinare in un percorso alternativo backup differenziali, nonché i backup di file del catalogo full-text o filegroup.
[!NOTA] Non è consentito ripristinare un catalogo full-text nella directory principale.
Ripristino di backup differenziali di cataloghi full-text
Per ripristinare il backup differenziale di dati di database e cataloghi full-text, eseguire due operazioni di ripristino, ovvero un ripristino completo seguito da un ripristino differenziale. La seconda operazione di ripristino aggiorna solo gli extent del database modificati tra il backup completo e quello differenziale.RESTORE DATABASE AdventureWorks FROM backup_device WITH NORECOVERY RESTORE DATABASE AdventureWorks FROM backup_device2 FILE = 'sysft_fulltext_cat'
In questo scenario, il database rimane non in linea e Microsoft Search viene interrotto tra le operazioni di ripristino. Entrambi tornano in linea solo al termine della seconda operazione di ripristino.
È inoltre possibile ripristinare i backup differenziali di file e filegroup.
Ripristino di backup di file di cataloghi full-text
Per ripristinare i backup di file e filegroup dei cataloghi full-text, specificare la clausola FILE o FILEGROUP nel comando RESTORE.RESTORE DATABASE AdventureWorks FILE = 'sysft_fulltext_cat' FROM backup_device --or RESTORE DATABASE AdventureWorks FILEGROUP = 'fulltext_catFG' FROM backup_device
Se si tenta di ripristinare i dati di un catalogo full-text con quelli di una versione precedente, in SQL Server viene visualizzato un avviso.
[!NOTA] Quando viene ripristinato un backup di un log delle transazioni, l'indice full-text potrebbe trovarsi in uno stato incoerente. Per ripristinare lo stato coerente dell'indice full-text è necessario eseguire una ricerca per indicizzazione completa.
Vedere anche
Concetti
Amministrazione della ricerca full-text