Base de données msdb
S’applique à : SQL Server Azure SQL Managed Instance
La base de données msdb est utilisée par SQL Server Agent pour planifier des alertes et des travaux, ainsi que par d’autres fonctionnalités telles que SQL Server Management Studio, Service Broker et Database Mail.
Par exemple, SQL Server gère automatiquement un historique complet et en ligne des sauvegardes et des restaurations dans les tables de la base de données msdb. Ces informations comprennent le nom du tiers qui a réalisé la sauvegarde, la durée de la sauvegarde et les unités ou fichiers dans lesquels la sauvegarde est stockée. SQL Server Management Studio utilise ces informations pour proposer un plan permettant de restaurer une base de données et d’appliquer les sauvegardes du journal des transactions. Les événements de sauvegarde sont enregistrés pour toutes les bases de données, même s'ils ont été créés par une application personnalisée ou un outil tiers. Par exemple, si vous utilisez une application Microsoft Visual Basic qui appelle des objets SMO (SQL Server Management Objects) pour effectuer les opérations de sauvegarde, l’événement est journalisé dans les tables système de msdb, le journal des applications Windows de Microsoft et le journal des erreurs SQL Server. Pour vous aider à protéger les informations stockées dans msdb, nous vous recommandons de placer le journal des transactions msdb sur un stockage à tolérance de panne.
Par défaut, la base de données msdb utilise le mode de récupération simple. Si vous utilisez les tables d’ historique de sauvegarde et de restauration , nous vous recommandons d’utiliser le mode de récupération complète pour la base de données msdb. Pour plus d’informations, consultez Modes de récupération (SQL Server). Notez que quand SQL Server est installé ou mis à niveau et chaque fois que Setup.exe est utilisé pour reconstruire les bases de données système, le mode de récupération de la base de données msdb prend automatiquement la valeur SIMPLE.
Important
- Après toute opération mettant à jour la base de données msdb, telle que la sauvegarde ou la restauration d’une base de données, nous vous recommandons de sauvegarder msdb. Pour plus d’informations, consultez Sauvegarder et restaurer des bases de données système (SQL Server).
- Il existe des différences entre les éléments disponibles dans la base de données msdb dans Azure SQL Managed Instance. Pour en savoir plus, passez en revue Transparence des sauvegardes.
Propriétés physiques de la base de données msdb
Le tableau ci-dessous répertorie les valeurs de configuration initiales des fichiers journaux et de données msdb . La taille de ces fichiers peut varier légèrement en fonction des éditions du moteur de base de données de SQL Server.
File | Nom logique | Nom physique | Croissance du fichier |
---|---|---|---|
Données primaires | MSDBData | MSDBData.mdf | Croissance automatique de 10 % jusqu'à saturation du disque. |
Journal | MSDBLog | MSDBLog.ldf | Croissance automatique de 10 % jusqu'à un maximum de 2 téraoctets. |
Pour déplacer la base de données msdb ou les fichiers journaux, consultez Déplacer des bases de données système.
Options de base de données
Le tableau ci-dessous indique la valeur par défaut de chaque option de la base de données msdb et précise si cette option est modifiable. Pour afficher les valeurs actuelles de ces options, utilisez l'affichage catalogue sys.databases .
Option de base de données | Valeur par défaut | Peut être modifiée |
---|---|---|
ALLOW_SNAPSHOT_ISOLATION | ACTIVÉ | Non |
ANSI_NULL_DEFAULT | OFF | Oui |
ANSI_NULLS | OFF | Oui |
ANSI_PADDING | OFF | Oui |
ANSI_WARNINGS | OFF | Oui |
ARITHABORT | OFF | Oui |
AUTO_CLOSE | OFF | Oui |
AUTO_CREATE_STATISTICS | ACTIVÉ | Oui |
AUTO_SHRINK | OFF | Oui |
AUTO_UPDATE_STATISTICS | ACTIVÉ | Oui |
AUTO_UPDATE_STATISTICS_ASYNC | OFF | Oui |
CHANGE_TRACKING | OFF | Non |
CONCAT_NULL_YIELDS_NULL | OFF | Oui |
CURSOR_CLOSE_ON_COMMIT | OFF | Oui |
CURSOR_DEFAULT | GLOBAL | Oui |
Options de disponibilité de base de données | ONLINE MULTI_USER READ_WRITE |
Non Oui Oui |
DATE_CORRELATION_OPTIMIZATION | OFF | Oui |
DB_CHAINING | ACTIVÉ | Oui |
ENCRYPTION | OFF | Non |
MIXED_PAGE_ALLOCATION | ACTIVÉ | Non |
NUMERIC_ROUNDABORT | OFF | Oui |
PAGE_VERIFY | CHECKSUM | Oui |
PARAMETERIZATION | SIMPLE | Oui |
QUOTED_IDENTIFIER | OFF | Oui |
READ_COMMITTED_SNAPSHOT | OFF | Non |
RECOVERY | SIMPLE | Oui |
RECURSIVE_TRIGGERS | OFF | Oui |
Options de Service Broker | ENABLE_BROKER | Oui |
TRUSTWORTHY | ACTIVÉ | Oui |
Pour obtenir une description de ces options de base de données, consultez ALTER DATABASE (Transact-SQL).
Restrictions
Les opérations suivantes ne peuvent pas être effectuées sur la base de données msdb :
- Modification du classement. Le classement par défaut est le classement du serveur.
- Suppression de la base de données
- Suppression de l'utilisateur Invité de la base de données
- Activation de la capture des données modifiées.
- Participation à la mise en miroir de bases de données
- Suppression du groupe de fichiers primaire, du fichier de données primaire ou du fichier journal
- Changement du nom de la base de données ou du groupe de fichiers primaire
- Affectation de la valeur OFFLINE à la base de données.
- Affectation de la valeur READ_ONLY au groupe de fichiers primaire.
Recommandations
Lorsque vous travaillez avec la base de données msdb , tenez compte des recommandations suivantes :
Ayez toujours une sauvegarde actuelle de la base de données msdb.
Sauvegardez la base de données msdb dès que possible après les opérations suivantes :
- création, modification ou suppression de travaux, alertes, proxys ou plans de maintenance
- ajout, modification ou suppression de profils de messagerie de base de données
- ajout, modification ou suppression de stratégies de gestion basées sur des stratégies
Ne créez pas d'objets utilisateur dans la base de données msdb. Si vous en créez, il faut sauvegarder la base de données msdb plus souvent.
Traitez la base de données msdb comme très sensible et n’accordez pas l’accès à n’importe qui sans besoin approprié. Gardez en particulier à l’esprit que les tâches SQL Server Agent appartiennent souvent aux membres du rôle sysadmin et assurez-vous donc que le code exécuté ne peut pas être altéré.
Auditer les modifications apportées aux objets dans msdb