Ciao, sono Curt. Sono Senior Principal Engineer e lavoro con il team GSE. Questo video è dedicato al ripristino del database MSDB di MS SQL. Metodi per il ripristino del database MSDB e modalità di esecuzione del processo di ripristino. Esistono tre metodi per ripristinare il database MSDB. Si tratta del database principale responsabile del contenimento delle informazioni sui processi, di altre attività necessarie per SQL Server, della manutenzione e di altri tipi di operazioni a livello di programma, che possono essere estremamente importanti per il database nell'ambiente di produzione del database.
Questi tre metodi per ripristinare un database MSDB danneggiato sono, in primo luogo, il ripristino dal backup. Il metodo più semplice. Abbiamo anche la possibilità di usare DBCC CheckDB su questo database come faremmo con qualsiasi altro database SQL Server, e anche la sostituzione dei file di database MSDB è un altro metodo per essere in grado di riportare MSDB online e a uno stato in cui è coerente. Quindi andiamo avanti e diamo un'occhiata alle nostre diverse opzioni qui. Ora, con l'interfaccia GUI all'interno di SQL Server Management Studio, il processo è piuttosto semplice. Basta andare su "Attività", eseguire un "Ripristino", ripristinare un "Database".
Se si dispone di un backup con SQL Server, questo è un processo semplice da eseguire per riportare MSDB online. Ora esaminiamo il secondo metodo, che utilizza DBCC CheckDB. Abbiamo tre serie di comandi. Il primo set di comandi consiste nell'individuare dove i livelli di coerenza del database esistono attualmente per il database MSDB. Ora, non stiamo lavorando con un database MSDB danneggiato in questo caso specifico, quindi quando controlliamo la presenza di errori, errori di allocazione ed errori di coerenza, vediamo zero in questo caso particolare.
Quindi sì, sarebbe forse più vantaggioso vedere un database MSDB danneggiato con questo processo di ripristino, il processo demo, ma stiamo eseguendo tutti gli stessi passaggi che eseguiremmo se si trattasse di un database MSDB danneggiato. Quindi in questo caso particolare abbiamo solo fatto un controllo, non abbiamo cercato di riparare nulla. Se troviamo un report di errori, vorremmo tornare con il comando successivo, con DBCC CheckDB. Ancora una volta, tenere presente che lo stiamo facendo perché non disponiamo di un buon backup del database MSDB da ripristinare. Se è necessario tentare di eseguire una riparazione in base agli errori visualizzati qui, è possibile eseguire l'opzione di riparazione flessibile, ovvero ricostruire DBCC con DBCC CheckDB.
In questo caso specifico, lo eseguiremo per darvi un'idea. Ora, con l'esecuzione di questo su un database integro, verrà eseguito piuttosto rapidamente e, se non trova nulla, verrà eseguito molto velocemente. Ora, se si verificano errori, se si verifica un'incoerenza all'interno del database, è molto probabile che venga eseguito più a lungo, ma il database MSDB non è un database di grandi dimensioni. Dopo aver aggiunto molti lavori, potrebbe essere un po' più grande, ma non è ancora un database enorme. Se la nostra opzione di riparazione flessibile non funziona e continuiamo a visualizzare errori, possiamo ricorrere all'opzione di riparazione hardware che è "REPAIR_ALLOW_DATA_LOSS".
Fondamentalmente stiamo dicendo a SQL che vogliamo fare del nostro meglio, vogliamo fare tutto il possibile per salvare questo database. È così importante, contiene informazioni importanti all'interno del database che stiamo consentendo l'opzione di consentire una perdita del database al fine di riportare il database online e disponibile. Quindi, eseguendo lo stesso comando, l'operazione sarà molto simile a quella che abbiamo fatto con la riparazione software. Ora, se arriviamo a questo punto dopo aver eseguito questo, la riparazione hardware, e vediamo ancora errori, a questo punto potremmo dover ricorrere alla sostituzione dei file di database MSDB.
In questa particolare situazione, andremo alla directory di installazione per la nostra istanza di SQL Server. Ora, ogni volta che installiamo SQL Server, verrà installata una directory 'Binn' e all'interno di questa directory 'Binn' abbiamo una cartella 'Templates'. all'interno della cartella 'Templates' sono presenti i file di database per tutti i database di sistema per questa installazione di SQL Server. In questo caso abbiamo bisogno del file di database MSDB e dei file di log MSDB. Ne ho già estratto una copia e torneremo alla posizione in cui si trovano i file del database MSDB attivo.
Quindi, quello che vogliamo fare è piuttosto semplice. Tutto quello che vogliamo fare è sostituire questi due file: il file di dati MSDB e il file di registro MSDB. A tal fine, è necessario arrestare SQL Server. Avere l'opportunità di farlo è estremamente importante perché ci dà l'opportunità di gestire direttamente questi file e ci permette di importare i file sostitutivi. In questo esempio, in questa demo, abbiamo i nostri due file MSDB. Non è consigliabile eliminare i file DB danneggiati in questo modo. Potremmo essere in grado di visualizzarli su un altro sistema, accedervi ed estrarre informazioni, quindi procederemo con lo spostamento di questi file. Ho una cartella chiamata 'MSDB_save'. Li ho già copiati, quindi lasciatemi tornare indietro. In questo caso, dal momento che ho già una copia di questi, vado avanti e li elimino.
Ora inseriamo i file template. Dopo averlo fatto, riavviamo SQL. Lo svantaggio di dover eseguire questa operazione è che tutte le informazioni sui job che erano lì dentro, qualsiasi cosa a livello di programma che era stata sviluppata dopo l'installazione di SQL ed esisteva come job non c'è più, perché è stata eliminata con i vecchi file di database. Ogni volta che dobbiamo portare i modelli, si parte da Ground Zero per quanto riguarda MSDB, e tutto ciò che è a livello di lavoro che è stato inserito dopo l'installazione dovrà essere reinserito dopo aver portato i file del modello. Con questo si conclude la demo su come ripristinare un database MS SQL MSDB. Spero che questo video abbia aiutato a comprendere i metodi per eseguire il ripristino e come completare il processo di ripristino.
Grazie per l'attenzione.