Riparazione di un file MDF danneggiato di un database SQL Server

Summary: Questo blog descrive le possibili ragioni del danneggiamento del file MDF del database SQL Server. Descrive inoltre il processo manuale di riparazione di un file MDF del database SQL Server danneggiato, le sfide associate al processo manuale e l'alternativa migliore per superare queste sfide.

MDF è il file di dati primario del database di SQL Server, dove sono archiviati tutti i dati, compresi i componenti come indici, indici XML, viste, tabelle, trigger e stored procedure. Viene anche chiamato file di database principale o master di SQL Server. Ogni database SQL Server contiene almeno un file MDF.

Il file MDF può essere descritto come l’elemento principale per la gestione del database SQL.

Diverse ragioni portano alla corruzione del file di database di SQL Server (.mdf). Quando ciò accade, il database diventa inaccessibile e può portare a una possibile perdita di dati se il file non viene riparato in tempo.

Prima di discutere le varie soluzioni per riparare un file MDF, diamo un’occhiata ad alcune delle ragioni più comuni che possono portare alla corruzione di un file di database SQL.

Soluzione rapida: Se non vuole rischiare la perdita di dati, utilizzi Stellar Repair for MS SQL per riparare il file MDF danneggiato e recuperare tutti gli oggetti senza danneggiare il database. Il software è compatibile con MS SQL Server 2019, 2017, 2016, 2014, 2012, 2008, 2008 R2 e versioni precedenti.

Possibili cause di danni al file MDF

Di seguito sono riportate alcune ragioni comuni che possono portare a un file MDF danneggiato in SQL Server:

Come riparare i file MDF?

Microsoft SQL Server offre un comando integrato nella console del database, CHECKDB (DBCC CHECKDB), per verificare l’integrità fisica e logica degli oggetti db eseguendo le seguenti operazioni in sequenza:

Nota: per maggiori informazioni, consulti la descrizione dei comandi DBCC di cui sopra.

DBCC CHECKDB verifica la consistenza delle pagine db e altri controlli strutturali. Quindi segnala eventuali errori.

Se DBCC CHECKDB segnala errori di coerenza nel database, provi a ripristinare il database da una copia di backup nota e buona. Tuttavia, se la copia di backup non è disponibile o non è la più recente, CHECKDB offre diverse opzioni di riparazione per riparare un file MDF danneggiato in SQL Server.

Legga questo: Riparazione del database SQL con il comando DBCC CHECKDB

Le opzioni di riparazione sono le seguenti:

DBCC CHECKDB (‘DB-Name’, REPAIR_FAST)

DBCC CHECKDB (‘DB-Name’, REPAIR_REBUILD)

Nota: questa funzione (REPAIR_REBUILD) non risolve gli errori che contengono dati FILESTREAM.

DBCC CHECKDB (‘Nome DB’, REPAIR_ALLOW_DATA_LOSS)

Nota: in alternativa a DBCC CHECKDB, utilizzi l’opzione Repair_Allow_Data_Loss per riparare il file MDF danneggiato senza perdita di dati.

Cosa considerare quando si utilizzano le opzioni di riparazione di DBCC CHECKDB

Quando utilizza le opzioni di riparazione DBCC CHECKDB, presti attenzione ai seguenti requisiti:

  1. Il primo e più importante requisito è che il rispettivo database sia in modalità utente singolo per poter eseguire uno dei tre comandi di riparazione. Se un utente non mette il database in modalità utente singolo, appare il seguente messaggio di errore:

“L’istruzione di riparazione non viene elaborata. Il database deve essere in modalità utente singolo.

L’esecuzione di DBCC è stata completata. Se DBCC ha emesso messaggi di errore, contatti il suo amministratore di sistema“.

Può impostare il DB SQL in modalità utente singolo con il seguente comando:

ALTER DATABASE Nome del database SET SINGLE_USER CON ROLLBACK IMMEDIATO

  1. In secondo luogo, deve utilizzare la sintassi per eseguire correttamente i comandi di riparazione DBCC CHECKDB. Solo così le discrepanze saranno corrette e otterrà un file di database sano.
  2. Le istruzioni di riparazione DBCC non sono valide per le tabelle ottimizzate per la memoria. In questi casi, cioè quando si verificano problemi di integrità in una tabella ottimizzata per la memoria, deve ripristinare il backup per accedere ai dati del file db, a condizione che il file di backup non sia danneggiato.

Lo strumento di riparazione DBCC CHECKDB non è riuscito! Cosa fare ora?

Se il DBCC CHECKDB integrato non è in grado di riparare il file db SQL, può eseguire un software di riparazione SQL specializzato come Stellar Repair for MS SQL. Il software la aiuterà a riparare il file MDF e ad estrarre i dati in esso contenuti, senza dover investire molto tempo e fatica nella scrittura di codice complesso.

Questo software di riparazione SQL aiuta a verificare la presenza di voci errate nel database, a correggere gli schemi di bit e a riportare il database in uno stato coerente.

Caratteristiche principali del software Stellar Repair for MS SQL

Conclusione

Quando un file MDF si danneggia, l’unica preoccupazione degli amministratori di sistema o di database (DBA) è quella di garantire l’accesso al database e il ripristino di tutti i dati nel loro stato originale e intatto.  

Può facilmente ripristinare il file di database dall’ultima copia di backup, ma se questa non è disponibile o è danneggiata, l’esecuzione di DBCC CHECKDB con le opzioni di riparazione può essere utile. Se nessuna delle opzioni di riparazione funziona per lei o non vuole rischiare di perdere i dati a causa dell’opzione REPAIR_ALLOW_Data_LOSS, l’utilizzo del software Stellar Repair for MS SQL è il modo migliore per riparare un file MDF del database di SQL Server danneggiato. Può aiutare a riparare i file di database (.mdf e .ndf) quando la riparazione DBCC CHECKDB non riesce.

Related Post

Exit mobile version