Creazione di un backup completo del database (SQL Server)

Questo argomento descrive come creare un backup completo del database in SQL Server 2014 usando SQL Server Management Studio, Transact-SQL o PowerShell.

Nota

Per informazioni sul backup SQL Server nel servizio di archiviazione BLOB di Azure, vedere SQL Server Backup e ripristino con Archiviazione BLOB di Azure Servizio.

Contenuto dell'articolo

Prima di iniziare

Limitazioni e restrizioni

  • Non è possibile utilizzare l'istruzione BACKUP in una transazione esplicita o implicita.

  • I backup creati nella versione più recente di SQL Server non possono essere ripristinati nelle versioni precedenti di SQL Server.

  • Per altre informazioni, vedere Panoramica del backup (SQL Server).

Consigli

  • Poiché le dimensioni del database aumentano, i backup completi del database richiedono più tempo e più spazio di archiviazione. Per un database di grandi dimensioni può pertanto essere utile integrare un backup completo del database con una serie di backup database differenziali. Per altre informazioni, vedere Backup differenziali (SQL Server).

  • È possibile stimare la dimensione di un backup del database completo tramite la stored procedure di sistema sp_spaceused .

  • Per impostazione predefinita, per ogni operazione di backup eseguita in modo corretto viene aggiunta una voce al log degli errori di SQL Server e al registro eventi di sistema. Se il backup del log viene eseguito di frequente, questi messaggi possono aumentare rapidamente, provocando la creazione di log degli errori di dimensioni elevate e rendendo difficile l'individuazione di altri messaggi. In questi casi è possibile eliminare tali voci di log utilizzando il flag di traccia 3226 se nessuno degli script dipende da esse. Per altre informazioni, vedere Flag di traccia (Transact-SQL).

Sicurezza

TRUSTWORTHY è impostato su OFF in un backup del database. Per informazioni su come impostare TRUSTWORTHY su ON, vedere Opzioni ALTER DATABASE SET (Transact-SQL).

A partire da SQL Server 2012 le PASSWORD opzioni e MEDIAPASSWORD vengono interrotte per la creazione di backup. È possibile ripristinare backup creati con password.

Autorizzazioni

Le autorizzazioni BACKUP DATABASE e BACKUP LOG vengono assegnate per impostazione predefinita ai membri del ruolo predefinito del server sysadmin e dei ruoli predefiniti del database db_owner e db_backupoperator .

Eventuali problemi correlati alla proprietà e alle autorizzazioni sul file fisico del dispositivo di backup possono interferire con l'operazione di backup. SQL Server deve essere in grado di leggere e scrivere nel dispositivo; l'account con il quale viene eseguito il servizio SQL Server deve avere autorizzazioni di scrittura. Le autorizzazioni di accesso ai file, tuttavia, non vengono controllate dalla stored procedure sp_addumpdeviceche aggiunge una voce per un dispositivo di backup nelle tabelle di sistema. Di conseguenza, i problemi relativi all'accesso e alla proprietà del file fisico del dispositivo di backup potrebbero emergere solo in fase di accesso alla risorsa fisica durante un tentativo di backup o ripristino.

Utilizzare SQL Server Management Studio

Nota

Quando si specifica un'attività di backup usando SQL Server Management Studio, è possibile generare lo script di backup Transact-SQL corrispondente facendo clic sul pulsante Script e selezionando una destinazione script.

Per eseguire il backup di un database

  1. Dopo aver stabilito la connessione all'istanza appropriata del motore di database di Microsoft SQL Server, in Esplora oggetti fare clic sul nome del server per espandere l'albero del server.

  2. Espandere Databasee, a seconda del database, selezionare un database utente o espandere Database di sistema e selezionare un database di sistema.

  3. Fare clic con il pulsante destro del mouse sul database, scegliere Attivitàe quindi fare clic su Backup. Verrà visualizzata la finestra di dialogo Backup database .

  4. Nella casella di riepilogo verificare il nome del Database database. È possibile selezionare facoltativamente un database diverso nell'elenco.

  5. È possibile eseguire il backup di un database per qualsiasi modello di recupero (FULL, BULK_LOGGED, o SIMPLE).

  6. Nella casella di riepilogo Tipo di backup selezionare Completo.

    Si noti che dopo aver creato un backup completo del database, è possibile creare un backup differenziale del database; per altre informazioni, vedere Creare un backup differenziale del database (SQL Server).

  7. Facoltativamente, è possibile selezionare Backup di sola copia per creare un backup di sola copia. Un backup di sola copia è un backup SQL Server indipendente dalla sequenza di backup SQL Server convenzionali. Per altre informazioni, vedere Backup di sola copia (SQL Server).

    Nota

    Quando si seleziona l'opzione Differenziale , non è possibile creare un backup di sola copia.

  8. Per Il componente Backup fare clic su Database.

  9. Accettare il nome predefinito del set di backup indicato nella casella di testo Nome oppure immettere un nome diverso per il set di backup.

  10. Facoltativamente, immettere una descrizione del set di backup nella casella di testo Descrizione .

  11. Scegliere il tipo di destinazione di backup facendo clic su Disco, Nastro o URL. Per selezionare i percorsi per un massimo di 64 unità disco o nastro contenenti un singolo set di supporti, fare clic su Aggiungi. I percorsi selezionati vengono visualizzati nella casella di riepilogo Backup su .

    Per rimuovere una destinazione di backup, selezionarla e fare clic su Rimuovi. Per visualizzare il contenuto di una destinazione di backup, selezionarla e fare clic su Contenuto.

  12. Per visualizzare o selezionare le opzioni dei supporti, fare clic su Opzioni supporti nel riquadro Selezione pagina .

  13. Selezionare un'opzione Sovrascrivi supporti facendo clic su una delle opzioni seguenti:

    • Esegui backup nel set di supporti esistente

      Per questa opzione, fare clic su Accoda al set di backup esistente o Sovrascrivi tutti i set di backup esistenti. Per altre informazioni, vedere Set di supporti, gruppi di supporti e set di backup (SQL Server).

      Selezionare facoltativamente l'opzione Controlla nome set di supporti e scadenza set di backup per impostare la verifica della data e dell'ora di scadenza del set di supporti e del set di backup durante l'operazione di backup.

      Immettere facoltativamente un nome nella casella di testo Nome set di supporti . Se non si specifica un nome, verrà creato un set di supporti con nome vuoto. Se si specifica un nome per il set di supporti, il supporto (nastro o disco) verrà controllato per verificare che il nome effettivo corrisponda al nome specificato.

      Importante

      Questa opzione è disabilitata se è stato selezionato URL come destinazione di backup nella pagina Generale . Per altre informazioni, vedere Backup del database (pagina Opzioni multimediali)

      Se si intende utilizzare la crittografia, non selezionare questa opzione. Se si seleziona questa opzione, le opzioni di crittografia nella pagina Opzioni di backup saranno disabilitate. La crittografia non è supportata quando si esegue un accodamento al set di backup esistenti.

    • Esegui backup in un nuovo set di supporti e cancella tutti i set di backup esistenti

      Per questa opzione, immettere un nome nella casella di testo Nome nuovo set di supporti e, facoltativamente, aggiungere una descrizione per il set di supporti nella casella di testo Descrizione nuovo set di supporti .

      Importante

      Questa opzione è disabilitata se è stato selezionato URL nella pagina Generale . Queste azioni non sono supportate quando si esegue il backup nell'archiviazione di Azure.

  14. Nella sezione Affidabilità controllare facoltativamente:

  15. Se si esegue il backup su un'unità nastro, come specificato nella sezione Destinazione della pagina Generale , l'opzione Scarica nastro al termine del backup sarà attiva. Se si seleziona questa opzione, verrà inoltre attivata l'opzione Riavvolgi il nastro prima di scaricarlo .

    Nota

    Le opzioni presenti nella sezione Log delle transazioni sono attive solo in caso di backup di un log delle transazioni, come specificato nella sezione Tipo backup nella pagina Generale .

  16. Per visualizzare o selezionare le opzioni di backup, fare clic su Opzioni di backup nel riquadro Selezione pagina .

  17. Specificare quando il set di backup scadrà e potrà essere sovrascritto senza ignorare esplicitamente la verifica dei dati relativi alla scadenza:

    • Per impostare la scadenza del set di backup dopo un numero di giorni specifico, fare clic su Dopo (opzione predefinita) e immettere il numero di giorni dopo la creazione del set trascorsi i quali il set scadrà. È possibile impostare un valore compreso nell'intervallo da 0 a 99999 giorni. L'impostazione del valore 0 giorni indica che il set di backup non ha scadenza.

      Il valore predefinito viene impostato nell'opzione Periodo di memorizzazione predefinito supporti di backup (giorni) della finestra di dialogo Proprietà server (pagina Impostazioni database). Per accedere alla pagina, fare clic con il pulsante destro del mouse sul nome del server in Esplora oggetti e scegliere Proprietà, quindi selezionare la pagina Impostazioni database .

    • Per impostare una data di scadenza specifica per il set di backup, fare clic su Ile immettere la data di scadenza del set.

      Per altre informazioni sulle date di scadenza del backup, vedere BACKUP (Transact-SQL).For more information about backup expiration dates, see BACKUP (Transact-SQL).

  18. SQL Server 2008 Enterprise e versioni successive supporta la compressione dei backup. Per impostazione predefinita, la compressione di un backup dipende dal valore dell'opzione di configurazione del server Valore predefinito di compressione backup. Tuttavia, indipendentemente dall'impostazione predefinita a livello di server corrente, è possibile comprimere un backup selezionando Comprimi backuped è possibile impedire la compressione selezionando Non comprimere il backup.

    Per visualizzare o modificare l'impostazione predefinita corrente della compressione dei backup

  19. Specificare se utilizzare la crittografia per il backup. Selezionare un algoritmo di crittografia da utilizzare per il passaggio di crittografia e specificare un certificato o una chiave asimmetrica da un elenco di chiavi asimmetriche o di certificati esistenti. La crittografia è supportata in SQL Server 2014 o versioni successive. Per altre informazioni sulle opzioni di crittografia, vedere Backup del database (pagina Opzioni di backup).For more details on the Encryption options, see Backup Database (Backup Options Page).

Nota

In alternativa, è possibile creare i backup di database tramite Creazione guidata piano di manutenzione.

Uso di Transact-SQL

Per creare un backup completo del database

  1. Per creare backup completo del database, eseguire l'istruzione BACKUP DATABASE specificando:

    • Il nome del database di cui eseguire il backup.

    • Il dispositivo di backup in cui archiviare il backup completo del database.

    La sintassi Transact-SQL di base per un backup completo del database è:

    BACKUP DATABASE database

    TO dispositivo_backup [ , ...n ]

    [ WITH con_opzioni [ , ...o ] ];

    Opzione Descrizione
    database Corrisponde al database di cui eseguire il backup.
    backup_device [ , ...n ] Specifica un elenco di dispositivi di backup da 1 a 64 da utilizzare per l'operazione di backup. È possibile specificare un dispositivo di backup fisico oppure un dispositivo di backup logico corrispondente se è già stata definito. Per specificare un dispositivo di backup fisico, utilizzare l'opzione DISK o TAPE:

    { DISK | TAPE } =physical_backup_device_name

    Per altre informazioni, vedere Dispositivi di backup (SQL Server).
    WITH con_opzioni [ , ...o ] Facoltativamente, specifica una o più opzioni aggiuntive, o. Per informazioni su alcune opzioni WITH di base, vedere il passaggio 2.
  2. Facoltativamente, specificare uno o più opzioni WITH. Alcune opzioni WITH di base sono descritte di seguito. Per informazioni su tutte le opzioni WITH, vedere BACKUP (Transact-SQL).

    • Opzioni WITH del set di backup di base:

      { COMPRESSION | NO_COMPRESSION }
      In SQL Server 2008 Enterprise e versioni successive specifica se la compressione dei backup viene eseguita su questo backup, eseguendo l'override del valore predefinito a livello di server.

      CRITTOGRAFIA (ALGORITMO, CERTIFICATO SERVER |ASYMMETRIC KEY)
      Solo in SQL Server 2014 o versioni successive specificare l'algoritmo di crittografia da utilizzare e il certificato o la chiave asimmetrica da utilizzare per proteggere la crittografia.

      DESCRIPTION = { 'text' | @text_variable }
      Specifica il testo in formato libero che descrive il set di backup. La stringa può essere composta da un massimo di 255 caratteri.

      NAME = { backup_set_name backup_set_name_var | @ }
      Specifica il nome del set di backup. I nomi possono essere composti da un massimo di 128 caratteri. Se si omette NAME, al set di backup non viene assegnato alcun nome specifico.

    • Opzioni WITH del set di backup di base:

      Per impostazione predefinita, BACKUP accoda il backup a un set di supporti esistente, conservando i set di backup esistenti. E possibile specificarlo in modo esplicito utilizzando l'opzione NOINIT. Per informazioni sull'aggiunta a set di backup esistenti, vedere Set di supporti, gruppi di supporti e set di backup (SQL Server).

      In alternativa, utilizzare l'opzione FORMAT per formattare i supporti di backup:

      FORMAT [ , MEDIANAME**=** { media_name | @media_name_variable } ] [ , MEDIADESCRIPTION = { text | @text_variable } ]
      Utilizzare la clausola FORMAT, se i supporti vengono utilizzati per la prima volta o si desiderano sovrascrivere tutti i dati esistenti. Facoltativamente, assegnare al nuovo supporto un nome e una descrizione.

      Importante

      Utilizzare la clausola FORMAT dell'istruzione BACKUP con estrema cautela, in quanto entrambe comportano la cancellazione di eventuali backup archiviati in precedenza nei supporti di backup.

Esempi (Transact-SQL)

A. Esecuzione del backup su un dispositivo disco

Nell'esempio seguente viene eseguito il backup del database AdventureWorks2012 completo su disco usando FORMAT per creare un nuovo set di supporti.

USE AdventureWorks2012;  
GO  
BACKUP DATABASE AdventureWorks2012  
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2012.Bak'  
   WITH FORMAT,  
      MEDIANAME = 'Z_SQLServerBackups',  
      NAME = 'Full Backup of AdventureWorks2012';  
GO  

B. Esecuzione del backup su un dispositivo nastro

Nell'esempio seguente viene eseguito il backup del database AdventureWorks2012 completo sunastro, aggiungendo il backup ai backup precedenti.

USE AdventureWorks2012;  
GO  
BACKUP DATABASE AdventureWorks2012  
   TO TAPE = '\\.\Tape0'  
   WITH NOINIT,  
      NAME = 'Full Backup of AdventureWorks2012';  
GO  

C. Esecuzione del backup su un dispositivo nastro logico

Nell'esempio seguente viene creato in un dispositivo di backup logico per un'unità nastro. Nell'esempio viene quindi eseguito il backup del database AdventureWorks2012 completo nel dispositivo.

-- Create a logical backup device,   
-- AdventureWorks2012_Bak_Tape, for tape device \\.\tape0.  
USE master;  
GO  
EXEC sp_addumpdevice 'tape', 'AdventureWorks2012_Bak_Tape', '\\.\tape0'; USE AdventureWorks2012;  
GO  
BACKUP DATABASE AdventureWorks2012  
   TO AdventureWorks2012_Bak_Tape  
   WITH FORMAT,  
      MEDIANAME = 'AdventureWorks2012_Bak_Tape',  
      MEDIADESCRIPTION = '\\.\tape0',   
      NAME = 'Full Backup of AdventureWorks2012';  
GO  

Utilizzo di PowerShell

  1. Utilizzare il cmdlet Backup-SqlDatabase. Per indicare in modo esplicito che si tratta di un backup completo del database, specificare il parametro -BackupAction con il relativo valore predefinito, Database. Questo parametro è facoltativo per i backup completi di database.

    L'esempio seguente consente di creare un backup di database completo del database di MyDB nel percorso di backup predefinito dell'istanza del server Computer\Instance. Facoltativamente, in questo esempio viene specificato -BackupAction Database.

    Backup-SqlDatabase -ServerInstance Computer\Instance -Database MyDB -BackupAction Database  
    

Per impostare e utilizzare il provider PowerShell per SQL Server

Attività correlate

Vedere anche

Backup Overview (SQL Server)
Backup di log delle transazioni (SQL Server)
Set di supporti, gruppi di supporti e set di backup (SQL Server)
sp_addumpdevice (Transact-SQL)
BACKUP (Transact-SQL)
Backup database (pagina Generale)
Backup database (pagina Opzioni di backup)
Backup differenziali [SQL Server]
Backup completo del database (SQL Server)