Backup e ripristino: database di sistema (SQL Server)
Si applica a:SQL Server
SQL Server gestisce un set di database a livello di sistema, denominati database di sistema, che sono essenziali per il funzionamento di un'istanza del server. Dopo ogni aggiornamento importante, è necessario eseguire il backup di numerosi database di sistema. I database di sistema di cui è sempre necessario eseguire il backup includono msdb
, master
e model
. Se un database usa la replica nell'istanza del server, è necessario eseguire anche il backup del database di distribution
sistema. I backup di questi database di sistema consentono di ripristinare e ripristinare il sistema SQL Server dopo un errore di sistema, ad esempio la perdita di un dispositivo di archiviazione.
Nella tabella seguente è presentato un riepilogo di tutti i database di sistema.
Database di sistema | Descrizione | Backup necessari? | Modello di recupero | Commenti |
---|---|---|---|---|
master | Database che registra tutte le informazioni a livello di sistema per un sistema SQL Server. | Sì | Semplice | Eseguire il backup master con la frequenza necessaria per proteggere i dati in modo sufficiente per le esigenze aziendali. È consigliabile pianificare i backup con regolarità, pianificazione che è possibile integrare con backup aggiuntivi dopo un aggiornamento importante. I backup del log delle transazioni di master non sono supportati. |
model | Modello per tutti i database creati nell'istanza di SQL Server. | Sì | Configurabile dall'utente1 | Eseguire il backup model solo quando necessario per le esigenze aziendali, ad esempio immediatamente dopo la personalizzazione delle opzioni di database.Procedura consigliata: è consigliabile creare solo backup completi del database di model , in base alle esigenze. Poiché model è piccolo e raramente cambia, il backup del log non è necessario. |
msdb | Database usato da SQL Server Agent per la pianificazione di avvisi e processi e per gli operatori di registrazione. msdb contiene anche tabelle di cronologia, ad esempio le tabelle di cronologia di backup e ripristino. |
Sì | Con registrazione minima (impostazione predefinita) | Eseguire il backup msdb ogni volta che viene aggiornato. |
Database di risorse (RDB) | Database di sola lettura che contiene copie di tutti gli oggetti di sistema forniti con SQL Server | No | None | Il database di risorse si trova nel mssqlsystemresource.mdf file, che contiene solo codice. Di conseguenza, SQL Server non può eseguire il backup del database delle risorse.Nota: è possibile eseguire un backup basato su file o su disco nel mssqlsystemresource.mdf file trattando il file come se fosse un file binario (.exe ) anziché un file di database. Non è tuttavia possibile usare il ripristino di SQL Server nei backup. Il ripristino di una copia di backup di mssqlsystemresource.mdf può essere eseguito solo manualmente ed è necessario prestare attenzione a non sovrascrivere il database risorse corrente con una versione non aggiornata o potenzialmente non sicura. |
tempdb | Area di lavoro per il mantenimento dei set di risultati temporanei o intermedi. Questo database viene ricreato ogni volta che viene avviata un'istanza di SQL Server. Quando l'istanza del server viene arrestata, tutti i dati in tempdb vengono eliminati definitivamente. |
No | Semplice | Non è possibile eseguire il backup del tempdb database di sistema. |
Configurare la distribuzione | Database esistente solo se il server è configurato come server di distribuzione repliche. In questo database sono memorizzati metadati e dati della cronologia per tutti i tipi di replica, nonché transazioni per la replica transazionale. | Sì | Semplice | Per informazioni su quando eseguire il backup del distribution database, vedere Backup e ripristino di database replicati. |
1 Per informazioni sul modello di recupero corrente, vedere Visualizzare o modificare il modello di recupero di un database (SQL Server) o sys.databases (Transact-SQL).
Limitazioni per il ripristino dei database di sistema
I database di sistema possono essere ripristinati solo dai backup creati nella versione di SQL Server in cui è attualmente in esecuzione l'istanza del server. Ad esempio, per ripristinare un database di sistema in un'istanza del server che esegue SQL Server 2016 (13.x) con Service Pack 1, è necessario usare un backup del database creato dopo l'aggiornamento dell'istanza del server a SQL Server 2016 (13.x) SP 1.
Per ripristinare qualsiasi database, è necessario eseguire l'istanza di SQL Server. L'avvio di un'istanza di SQL Server richiede che il master
database sia accessibile e almeno parzialmente utilizzabile. Se master
diventa inutilizzabile, è possibile restituire il database a uno stato utilizzabile in uno dei modi seguenti:
Eseguire il ripristino
master
da un backup del database corrente.Se è possibile avviare l'istanza del server, dovrebbe essere possibile eseguire il ripristino
master
da un backup completo del database. Per altre informazioni, vedere Ripristinare il database master (Transact-SQL).Ricompilare
master
completamente.Se si verifica un grave danno per impedire l'avvio di
master
SQL Server, è necessario ricompilaremaster
. Per altre informazioni, vedere Ricompilare i database di sistema.Importante
master
La ricompilazione ricompila tutti i database di sistema.
In alcuni casi, i problemi di ripristino del database potrebbero richiedere la model
ricompilazione dei database di sistema o la sostituzione dei mdf
file e ldf
per il model
database. Per altre informazioni, vedere Ricompilare i database di sistema.
Attività correlate
- Creare un backup completo del database
- Ripristini di database completi (modello di recupero con registrazione minima)
- Ripristinare il database master (Transact-SQL)
- Visualizzare o modificare il modello di recupero di un database (SQL Server)
- Spostare i database di sistema
Contenuto correlato
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: nel corso del 2024 verranno dismessi i problemi di GitHub come meccanismo di feedback per il contenuto e verranno sostituiti con un nuovo sistema di feedback. Per altre informazioni, vedere:Invia e visualizza il feedback per