Backup del registro di coda quando si esegue un ripristino?


9

In genere, quando eseguo un ripristino di un DB da un server di produzione a un server non di produzione, userò l'opzione WITH REPLACE come quando dimentico di avere un errore sul log di coda di cui non viene eseguito il backup.

Secondo MSDN dovrei effettivamente eseguire il backup del mio registro di coda prima di ripristinare:

Se il database è online e si prevede di eseguire un'operazione di ripristino sul database, iniziare con il backup della coda del registro. Per evitare un errore per un database online, è necessario utilizzare l'opzione ... WITH NORECOVERY dell'istruzione BACKUP Transact-SQL.

Quali sono alcuni pericoli o svantaggi del modo in cui lo sto facendo? Perché il backup del registro di coda è per me un vantaggio?

Sto usando SQL Server 2008R2 ma presumo che questa query sarà rilevante anche per la maggior parte delle versioni più recenti di SQL Server, quindi non l'ho contrassegnata come tale inizialmente.


6
Penso che ciò significhi se hai intenzione di ripristinare nella stessa posizione (e potenzialmente applicare ulteriori registri delle transazioni). Se hai intenzione di ripristinare solo una semplice copia del database altrove e non è necessario mantenere la catena di log, utilizzerei il metodo che stai utilizzando. Potrei persino usarlo WITH COPY_ONLYsul backup.
Aaron Bertrand

Risposte:


4

Se non si esegue il backup della coda del registro, si perdono le transazioni che si sono verificate dall'ultimo backup del database.


1
Sì l'ho capito. Ma anche così penso che la tua risposta mi abbia fatto colmare il divario nel mio pensiero. Vedi che non viene mai eseguito il backup del DB non di produzione, quindi sto perdendo l'intero DB ripristinando comunque, quindi perché dovrei preoccuparmi del registro di coda. Ma il pensiero MSDN è che eseguo sempre il backup del mio DB, l'unico bit non eseguito il backup in questo momento è il registro di coda, quindi vogliono che io faccia il backup. Per il mio specifico scenario di un DB di non produzione temporaneo di cui nessuno si preoccupa, quindi non vi è alcun vantaggio nel backup del registro di coda.
Paolo,

2
Assolutamente giusto. Se vuoi semplicemente portare i dati in un ambiente non di produzione e non ti interessa davvero quello che c'era dentro, allora non c'è davvero nessun problema.
JoseTeixeira,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.