Sommario
    SQL Database Ripara

    Come risolvere la corruzione del database di sistema in SQL Server?


    Sommario

      SQL Server mantiene i database di sistema (master, model, msdb e resource) per il funzionamento di un’istanza del server. Tuttavia, non è possibile connettersi a un’istanza del server se i database di sistema presentano problemi di corruzione. Per riportare il server in linea, si può provare a ripristinare i database di sistema dai backup. Se non esiste un backup recente, la ricostruzione dei database di sistema può aiutare a risolvere il problema. Questo blog spiega i passaggi per ricostruire i database di sistema.

      Prima di iniziare il processo di ricostruzione, è necessario seguire alcuni prerequisiti per garantire che i database del sistema vengano ripristinati alle impostazioni originali.

      Prerequisiti

      • Assicurarsi di essere un membro del ruolo sysadmin ruolo  per ricostruire i database del sistema.
      • Tenere traccia degli hotfix applicati all’istanza del server e della collazione corrente. Sarà necessario riapplicare gli hotfix dopo aver completato il processo di ricostruzione.
      • Quando i database di sistema vengono ricostruiti, vengono installati nella posizione originale. Pertanto, se i file di dati o di log (.ldf) di un database di sistema sono stati spostati in un’altra posizione, sarà necessario spostarli nuovamente. È quindi necessario registrare la posizione attuale dei file di dati e di log.
      • I file modello sono necessari durante il processo di ricostruzione. Assicurarsi che sul server locale esistano copie dei file di modello dei dati e dei registri master, model e msdb. I file dei modelli si trovano in:
      C:\File di programma\Microsoft SQL Server\MSSQLxx.MSSQLSERVER\MSSQL\Binn\Template

      Passi per ricostruire i database di sistema in SQL Server

      Nota: prima di applicare i passaggi seguenti, controllare i registri degli errori SQL per trovare maggiori dettagli sul motivo per cui l’istanza del server non si avvia. È probabile che il problema non riguardi il database master.

      Seguite questi passaggi per ricostruire i database di sistema per un’istanza del server:

      • Prima di avviare il processo di ricostruzione, eseguire un backup completo di tutti i database di sistema e dei database utente. Potrebbe essere necessario ripristinare il backup per evitare la perdita di dati. Per ulteriori dettagli, vedere Backup e ripristino dei database di sistema (SQL Server).
      • Accedere all’unità del supporto di installazione per copiare la posizione del file setup.exe sul server locale del sistema. Per impostazione predefinita, il file setup.exe si trova in:
      C:\Program Files\Microsoft SQL Server\140\Setup Bootstrap\SQLServer2017

      Qui, ‘140’ è il numero di versione di SQL Server. È possibile sostituire la versione con la versione del proprio SQL Server (‘110’, ‘120’, ‘130’, ecc.).

      • Ora aprite il prompt dei comandi come amministratore ed eseguite il seguente script:
      Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=InstanceName /SQLSYSADMINACCOUNTS=accounts [ /SAPWD= StrongPassword ] [ /SQLCOLLATION=CollationName]
      prompt dei comandi

      Nel comando precedente, sostituite InstanceName con il nome dell’istanza di SQL Server.

      Inoltre, sostituite ‘=accounts‘ con il nome dell’account locale di Windows o il nome del dominio che si desidera utilizzare per accedere a SQL Server dopo il processo di ricostruzione. Questo è importante perché si perderanno tutti i login durante la ricostruzione del database master. Quando si aggiunge più di un account, inserire uno spazio vuoto per separare gli account. Inoltre, aggiungere una password per l’account SQL Server.

      Ad esempio, nel comando REBUILD, abbiamo sostituito il nome dell’istanza con MSSQLSERVER che ricostruiremo. Inoltre, abbiamo aggiunto il nome dell’account locale di Windows per SYSADMINACCOUNTS e abbiamo inserito la password per l’account SA. Abbiamo rimosso SQLCOLLATION, poiché non è necessario.

      Premere Invio e il processo di ricostruzione si conclude senza alcun errore. È possibile verificare se il processo di ricostruzione è stato completato correttamente controllando il file di registro Summary.txt. Questo file si trova nel percorso C:\Program Files\Microsoft SQL Server\140\Setup Bootstrap\Logs.

      • Al termine del processo di ricostruzione, potrebbe essere necessario ripristinare i database di sistema dal backup eseguito nel passaggio 1. Questo accade di solito quando è necessario ripristinare i database utente (persi) presenti prima del processo di ricostruzione. Di solito questo accade quando è necessario ripristinare i database utente (persi) che erano presenti prima del processo di ricostruzione. Una volta completato il processo di ripristino, SQL Server si spegne. Riavviare il server e verificare se è possibile accedere ai database.

      Per concludere

      In questo blog sono state illustrate le istruzioni passo-passo per la ricostruzione di tutti i database di sistema. Ha inoltre illustrato alcuni prerequisiti da soddisfare prima della ricostruzione. Per riparare i file di database corrotti di SQL Server (.mdf e .ndf), è possibile utilizzare uno strumento di riparazione dei database SQL. Stellar Repair for MS SQL è uno di questi strumenti che aiuta a riparare sia i file .mdf che .ndf e a ripristinare il database nella sua forma originale con tutti i dati intatti.

      Download gratuito per Windows

      Was this article helpful?

      No NO

      Circa l'autore

      Himanshu Shakya

      Himanshu is a Tech Enthusiast and Blogger at Stellar, with expertise in data recovery solutions and a keen interest in emerging technologies. Fluent in Japanese, he brings a diverse skill set to his role, contributing to global tech conversations. Outside of work, Himanshu enjoys playing chess, sharpening his strategic thinking and problem-solving skills in his spare time.

      Post correlato

      PERCHÉ STELLAR® È LEADER MONDIALE

      Perché scegliere Stellar?

      • 0M+

        Clienti

      • 0+

        Anni di eccellenza

      • 0+

        Ingegneri R&S

      • 0+

        Paesi

      • 0+

        PARTNER

      • 0+

        Premi ricevuti