Sauvegarde et restauration : bases de données système (SQL Server)
S’applique à : SQL Server
SQL Server assure la maintenance d’un jeu de bases de données au niveau système, appelées bases de données système, qui sont essentielles au fonctionnement d’une instance de serveur. Il est nécessaire de sauvegarder plusieurs bases de données système après chaque mise à jour importante. Les bases de données système qui doivent toujours êtres sauvegardées sont les suivantes : msdb
, master
et model
. Si une base de données utilise la réplication sur l’instance de serveur, vous devez également sauvegarder la base de données système distribution
. Les sauvegardes de ces bases de données système vous permettent de restaurer et de récupérer le système SQL Server après une défaillance du système, telle que la perte d’un dispositif de stockage.
Le tableau suivant récapitule l'ensemble des bases de données système :
Base de données système | Description | Des sauvegardes sont-elles nécessaires ? | mode de récupération | Commentaires |
---|---|---|---|---|
maître | Base de données qui contient l’intégralité des informations système relatives à un système SQL Server. | Oui | Simple | Sauvegardez la base de données master aussi souvent que nécessaire pour protéger suffisamment les données en fonction de vos besoins. Nous vous recommandons de définir une planification de sauvegarde régulière complétée d'une sauvegarde supplémentaire après une mise à jour substantielle. Les sauvegardes de journal des transactions de master ne sont pas prises en charge. |
modèle | Modèle de toutes les bases de données créées dans l’instance de SQL Server. | Oui | Configuration des utilisateurs1 | Sauvegardez la base de données model aussi souvent que nécessaire en fonction de vos besoins ; par exemple, immédiatement après avoir personnalisé ses options de base de données.Meilleure pratique : nous recommandons d’effectuer uniquement des sauvegardes complètes de model , selon les besoins. Étant donné que model est petit et change rarement, il n’est pas nécessaire de sauvegarder le journal. |
msdb | La base de données est utilisée par SQL Server Agent pour planifier les alertes et les travaux et pour enregistrer les opérateurs. msdb contient aussi les tables d’historique, telles que les tables d’historique de restauration et de sauvegarde. |
Oui | Simple (par défaut) | Sauvegardez la base de données msdb chaque fois qu’elle est mise à jour. |
Base de données Resource (RDB) | Base de données en lecture seule qui contient les copies de tous les objets système fournis avec SQL Server | Non | Aucune | La base de données Resource réside dans le fichier mssqlsystemresource.mdf , qui contient uniquement du code. Par conséquent, SQL Server ne peut pas sauvegarder la base de données Resource.Remarque : vous pouvez effectuer une sauvegarde sur fichiers ou sur disque sur le fichier mssqlsystemresource.mdf en le traitant comme s’il s’agissait d’un fichier binaire (.exe ), et non d’un fichier de base de données. Toutefois, vous ne pouvez pas utiliser la restauration SQL Server sur les sauvegardes. La restauration d’une copie de sauvegarde du fichier mssqlsystemresource.mdf peut uniquement être effectuée manuellement et vous devez alors veiller à ne pas remplacer la version actuelle de la base de données Resource par une version obsolète ou potentiellement instable. |
tempdb | Espace de travail qui contient les ensembles de résultats temporaires et intermédiaires. Cette base de données est recréée chaque fois qu’une instance de SQL Server démarre. Lors de l’arrêt de l’instance du serveur, toutes les données dans tempdb sont supprimées définitivement. |
Non | Simple | Vous ne pouvez pas sauvegarder la base de données système tempdb . |
Configurer la distribution | Base de données qui existe uniquement si le serveur est configuré comme serveur de distribution de réplication. Cette base de données contient les métadonnées et les données historiques de tous les types de réplications, ainsi que les transactions de la réplication transactionnelle. | Oui | Simple | Pour savoir quand vous devez sauvegarder la base de données distribution , consultez Sauvegarder et restaurer des bases de données répliquées. |
1 Pour plus d’informations sur le mode de récupération actuel du modèle, consultez Afficher ou modifier le mode de récupération d’une base de données (SQL Server) ou sys.databases (Transact-SQL).
Limitations sur la restauration des bases de données système
Les bases de données système peuvent être restaurées uniquement à partir de sauvegardes créées dans la version de SQL Server dans laquelle s’exécute actuellement l’instance de serveur. Par exemple, pour restaurer une base de données système sur une instance de serveur qui s’exécute sur SQL Server 2016 (13.x) avec Service Pack 1, vous devez utiliser une sauvegarde de base de données créée après la mise à niveau de l’instance de serveur vers SQL Server 2016 (13.x) SP 1.
Pour restaurer une base de données, l’instance de SQL Server doit être active. Pour pouvoir démarrer une instance de SQL Server, la base de données master
doit être accessible et partiellement utilisable. Si la base de données master
devient inutilisable, vous pouvez la ramener à un état utilisable de deux manières :
en restaurant la base de données
master
depuis une sauvegarde actuelle.Si vous pouvez démarrer l’instance du serveur, vous pouvez restaurer la base de données
master
depuis une sauvegarde complète. Pour plus d’informations, consultez Restaurer la base de données MASTER (Transact-SQL).Reconstruire
master
complètement.Si la base de données
master
est gravement endommagée et ne vous permet pas de démarrer SQL Server, vous devez recréer la base de donnéesmaster
. Pour plus d’informations, consultez Régénérer des bases de données système.Important
Lorsque vous recréez la base de données
master
, vous recréez toutes les bases de données système.
Dans certains cas, les problèmes de récupération de la base de données model
peuvent nécessiter la reconstruction des bases de données système ou le remplacement des fichiers mdf
et ldf
de la base de données model
. Pour plus d’informations, consultez Régénérer des bases de données système.
Tâches associées
- Créer une sauvegarde de base de données complète
- Restaurations de base de données complètes (mode de récupération simple)
- Restaurer la base de données MASTER (Transact-SQL)
- Afficher ou modifier le mode de récupération d’une base de données (SQL Server)
- Déplacer des bases de données système