Backup della parte finale del log

Data aggiornamento: 17 luglio 2006

Icona con disco di database blu Questo argomento è rilevante solo per i database che utilizzano i modelli di recupero con registrazione completa o con registrazione minima delle transazioni di massa.

Nella maggioranza dei casi, nel modello di recupero con registrazione completa o nel modello di recupero con registrazione minima delle transazioni di massa, SQL Server 2005 richiede l'esecuzione un backup della parte finale del log per acquisire i record del log di cui non è stato ancora eseguito il backup. Un backup del log eseguito sulla parte finale del log stesso appena prima di un'operazione di ripristino è detto backup della parte finale del log.

In SQL Server 2005 è in genere necessario eseguire il backup della parte finale del log prima di avviare il ripristino di un database. Il backup della parte finale del log impedisce la perdita di dati e mantiene intatta la catena di log. Quando si recupera un database fino al punto di un errore, il backup della parte finale del log è l'ultimo backup di interesse nel piano di recupero. Se non è possibile eseguire un backup della parte finale del log, è possibile recuperare un database solo fino alla fine dell'ultimo backup creato prima dell'errore.

Non in tutti gli scenari di ripristino è necessario un backup della parte finale del log. Il backup della parte finale del log non è necessario se il punto di recupero è incluso in un backup del log precedente o se si sta spostando o sostituendo (sovrascrivendo) il database. Inoltre, se i file di log sono danneggiati e non è possibile creare un backup della parte finale del log, è necessario ripristinare il database senza utilizzare un backup della parte finale del log. Qualsiasi transazione di cui sia stato eseguito il commit dopo l'ultimo backup del log andrà persa. Per ulteriori informazioni, vedere "Ripristino senza utilizzare un backup della parte finale del log" di seguito in questo argomento.

Esecuzione del backup della parte finale del log

Analogamente a qualsiasi backup del log, un backup della parte finale del log viene eseguito utilizzando l'istruzione BACKUP LOG. È consigliabile eseguire un backup della parte finale del log nelle situazioni seguenti:

  • Se il database è in linea, prima di avviare una sequenza di ripristino, eseguire un backup della parte finale del log utilizzando WITH NORECOVERY ogni volta che l'azione successiva che si intende eseguire sul database è un'operazione di ripristino:
    BACKUP LOG nome_database TO <periferica_backup> WITH NORECOVERY

    [!NOTA] Per evitare errori, l'opzione NORECOVERY è necessaria.

  • Se il database non è in linea e non si avvia.
    Tentare di eseguire un backup della parte finale del log. Dato che in questo momento non può avvenire alcuna transazione, l'utilizzo di WITH NORECOVERY è facoltativo. Se il database è danneggiato, utilizzare WITH CONTINUE_AFTER_ERROR o WITH NO_TRUNCATE.
    BACKUP LOG nome_database TO <periferica_backup> [WITH { CONTINUE_AFTER_ERROR | NO_TRUNCATE }

    ms179314.note(it-it,SQL.90).gifImportante:
    È consigliabile evitare di utilizzare NO_TRUNCATE, a eccezione del caso in cui il database sia danneggiato.
    Se il database è danneggiato, ad esempio, se non si avvia, un backup della parte finale del log riuscirà solo se i file di log non sono danneggiati, il database è in uno stato che supporta il backup della parte finale del log e non include modifiche con registrazione minima delle transazioni di massa.

Nella tabella seguente è incluso un riepilogo di queste opzioni.

Opzione BACKUP LOG

Commenti

NORECOVERY

Utilizzare NORECOVERY ogni volta che si intende procedere con un'operazione di ripristino sul database. NORECOVERY porta il database nello stato di ripristino. Questo assicura che il database non si modifichi dopo il backup della parte finale del log.

Il log viene troncato a meno che venga specificata anche l'opzione NO_TRUNCATE o COPY_ONLY,

{ CONTINUE_AFTER_ERROR | NO_TRUNCATE }

Utilizzare NO_TRUNCATE o CONTINUE_AFTER_ERROR solo se si sta eseguendo il backup della parte finale di un database danneggiato.

ms179314.note(it-it,SQL.90).gifNota:

Quando si utilizza il backup della parte finale di un database danneggiato, alcuni dei metadati normalmente acquisiti nei backup dei log potrebbero essere non disponibili. Per ulteriori informazioni, vedere "Backup della parte finale del log con metadati di backup incompleti" di seguito in questo argomento.

Per creare un backup del log delle transazioni quando il database è danneggiato

Backup della parte finale del log con metadati di backup incompleti

I backup della parte finale del log consentono di acquisire la parte finale del log anche quando il database non è in linea, è danneggiato oppure è privo di alcuni file di dati. Questo può causare metadati incompleti nei comandi di ripristino delle informazioni e in msdb. Tuttavia, solo i metadati sono incompleti. Il log acquisito è completo e utilizzabile.

Se un backup della parte finale del log include metadati incompleti, nella tabella backupsethas_incomplete_metadata è impostato su 1. Inoltre, nell'output di RESTORE HEADERONLY, HasIncompleteMetadata è impostato su 1.

Se i metadati in un backup della parte finale del log sono incompleti, nella tabella backupfilegroup mancheranno la maggioranza delle informazioni sui filegroup al momento dell'esecuzione del backup della parte finale del log. La maggioranza delle colonne della tabella backupfilegroup sono NULL. Le uniche colonne significative sono le seguenti:

  • backup_set_id
  • filegroup_id
  • type
  • type_desc
  • is_readonly

Ripristino senza utilizzare un backup della parte finale del log

Tra gli scenari di ripristino in cui un backup della parte finale del log non è necessario sono inclusi i seguenti:

Vedere anche

Concetti

Backup di sola copia
Stati del database
Applicazione dei backup del log delle transazioni
Creazione di backup del log delle transazioni

Altre risorse

BACKUP (Transact-SQL)

Guida in linea e informazioni

Assistenza su SQL Server 2005

Cronologia modifiche

Versione Cronologia

17 luglio 2006

Nuovo contenuto:
  • Ampliamento delle informazioni relative al mancato utilizzo del backup della parte finale del log in una sezione separata, "Ripristino senza utilizzare un backup della parte finale del log".
Contenuto modificato:
  • Aggiornamento della sezione "Backup della parte finale del log".