Backup completo del database
Un backup completo del database esegue il backup dell'intero database. Questo include una parte del log delle transazioni sufficiente a consentire il recupero del backup completo del database. I backup completi del database rappresentano il database al momento del completamento del backup.
Nota
Per una panoramica dei vari tipi di backup, vedere Backup in base al modello di recupero con registrazione minima o Backup con il modello di recupero con registrazione completa.
I backup del database sono di facile utilizzo. Un backup completo del database contiene tutti i dati presenti nel database. Per un database di piccole dimensioni il cui backup può essere eseguito rapidamente, è consigliabile eseguire solo backup completi. Tuttavia, quando le dimensioni del database aumentano, i backup completi richiedono più tempo e più spazio di archiviazione. Per un database di grandi dimensioni può pertanto essere utile integrare i backup completi del database con backup differenziali. Per ulteriori informazioni, vedere Backup differenziale del database.
Nota
TRUSTWORTHY è impostato su OFF in un backup del database. Per informazioni su come impostare TRUSTWORTHY su ON, vedere ALTER DATABASE (Transact-SQL).
Utilizzo dei backup del database nel modello di recupero con registrazione minima
Se si utilizza il modello di recupero con registrazione minima, dopo ogni backup, il database è esposto al rischio di perdita di dati nel caso si verifichi un'emergenza. Questo rischio aumenta a ogni aggiornamento fino al backup completo successivo, quando il rischio torna a essere zero e inizia un nuovo ciclo.
Con il modello di recupero con registrazione minima, il rischio di perdita dei dati cresce nel tempo che intercorre tra un backup e l'altro. Nella figura seguente viene illustrato il rischio di perdita di dati per una strategia di backup che utilizza solo backup completi di database.
Esempio
Nell'esempio seguente viene illustrato come creare un backup completo del database utilizzando WITH FORMAT per sovrascrivere eventuali backup esistenti e creare un nuovo set di supporti.
-- Back up the AdventureWorks2008R2 database to new media set.
BACKUP DATABASE AdventureWorks2008R2
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2SimpleRM.bak'
WITH FORMAT;
GO
Utilizzo dei backup del database nel modello di recupero con registrazione completa
Per i database che utilizzano il modello di recupero con registrazione completa e il modello di recupero con registrazione minima delle operazioni bulk, sono necessari i backup dei log delle transazioni. Nella figura seguente viene illustrata la strategia di backup più semplice possibile quando si utilizza il modello di recupero con registrazione completa.
Nota
Se sono presenti due o più database che utilizzano il modello di recupero con registrazione completa e devono essere consistenti da un punto di vista logico, potrebbe essere necessario implementare procedure speciali per verificare la recuperabilità di questi database. Per ulteriori informazioni, vedere Utilizzo delle transazioni contrassegnate (modello di recupero con registrazione completa).
Per informazioni su come creare i backup dei log, vedere Utilizzo dei backup del log delle transazioni.
Esempio
Nell'esempio seguente viene illustrato come creare un backup completo del database utilizzando WITH FORMAT per sovrascrivere eventuali backup esistenti e creare un nuovo set di supporti. Viene quindi eseguito il backup del log delle transazioni. In una situazione reale sarebbe necessario eseguire una serie di backup del log regolari. In questo caso il database di esempio AdventureWorks2008R2 viene impostato per l'utilizzo del modello di recupero con registrazione completa.
USE master;
ALTER DATABASE AdventureWorks2008R2 SET RECOVERY FULL;
GO
-- Back up the AdventureWorks2008R2 database to new media set (backup set 1).
BACKUP DATABASE AdventureWorks2008R2
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2FullRM.bak'
WITH FORMAT;
GO
--Create a routine log backup (backup set 2).
BACKUP LOG AdventureWorks2008R2 TO DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2FullRM.bak';
GO
Creazione di un backup completo del database
Un backup completo del database viene creato con un'unica operazione e viene in genere pianificato per essere eseguito a intervalli prestabiliti.
La sintassi di BACKUP necessaria per la creazione di un backup completo del database è la seguente:
BACKUP DATABASE database_name TO backup_device
Per creare un backup completo del database
Procedura: Creazione di un backup completo del database (Transact-SQL)
Procedura: Esecuzione del backup di un database (SQL Server Management Studio)
SqlBackup (SMO)
Per pianificare i processi di backup
Utilizzo dei backup differenziali del database
Un backup del database può fungere da base differenziale per i backup differenziali del database. Ciò consente di integrare un backup del database con una breve serie di backup differenziali del database. Per ulteriori informazioni, vedere Utilizzo dei backup differenziali e Backup differenziale del database.
Utilizzo di un backup completo del database per ripristinare il database
È possibile ricreare un intero database in un solo passaggio ripristinando il database da un backup completo del database in qualsiasi posizione. Nel backup è inclusa una parte del log delle transazioni sufficiente per consentire il recupero del database fino al momento in cui è terminato il backup. Quando il database viene recuperato, viene effettuato il rollback delle transazioni di cui non è stato eseguito il commit. Lo stato del database ripristinato corrisponde allo stato del database originale al termine del backup ripristinato, escluse eventuali transazioni di cui non è stato eseguito il commit.
L'operazione di ripristino crea il database nella destinazione specificata. Se il database esiste già nella posizione specificata, l'operazione di ripristino sovrascrive il database esistente. Per evitare di sovrascrivere un database esistente, specificare un nome diverso per il database ripristinato.
Per ulteriori informazioni, vedere Esecuzione di un ripristino di database completo (modello di recupero con registrazione minima) o Esecuzione di un ripristino completo del database (Modello di recupero con registrazione completa).
Vedere anche