Bases de données système SQL Server

Bases de données système SQL Server

Bienvenue, mes collègues développeurs de bases de données, à un autre tutoriel SQL Server.

Dans cet article, nous allons améliorer nos connaissances SQL Server en comprenant les bases de données système fournies par le serveur SQL, et quel est exactement leur objectif. Nous discuterons également du DOS et ne le faisons pas en ce qui concerne le SQL Server System DBS.

Bases de données système dans SQL Server

Selon la version et la méthode d'installation de SQL Server, SQL Server nous fournit cinq bases de données système principales.

Ces bases de données incluent:

  1. Base de données principale
  2. Base de données MSDB
  3. Base de données de modèle
  4. Base de données de ressources
  5. Base de données tempdb

Laissons rapidement ce qu'ils font.

Base de données maître SQL Server

Le premier est la base de données maîtresse. Cette base de données système stocke toutes les informations au niveau du système pour l'instance du serveur.

Dans cette base de données, vous trouverez les informations telles que:

  1. Comptes de connexion
  2. Points de terminaison
  3. Serveurs liés
  4. Paramètres de configuration du système
  5. Fichage des emplacements des bases de données

Par conséquent, ce serait un énorme euphémisme pour déclarer qu'il s'agit d'une base de données système critique. Si la base de données principale est corrompue ou manquante, le serveur SQL ne peut pas démarrer à moins d'être réparé.

Comme vous pouvez le deviner, SQL Server restreint ce que vous pouvez effectuer dans les bases de données principales.

Par conséquent, vous êtes limité à ce qui suit:

  1. Déposez la base de données maître
  2. Définissez la base de données sur hors ligne
  3. Définissez la base de données ou le groupe de fichiers primaire sur read_only
  4. Ajouter de nouveaux fichiers ou groupes de fichiers à la base de données
  5. Effectuer tout autre type de sauvegarde, sauf une sauvegarde complète
  6. Modifier le collation par défaut ou le propriétaire de la base de données principale. Par défaut, la base de données principale appartient à l'utilisateur SA avec le collation du serveur par défaut.
  7. Ajouter des déclencheurs sur les tables système dans la base de données maître
  8. Activer la capture de données de changement
  9. Renommer la base de données ou le groupe de fichiers primaire
  10. Inscrivez la base de données principale dans l'opération de miroir de la base de données
  11. Supprimer l'utilisateur invité de la base de données principale
  12. Créez des déclencheurs dans le maître DB

Ceci est une base de données sévère.

Base de données système SQL Server MSDB

La deuxième base de données dans les bases de données système SQL Server est la base de données MSDB. Cette base de données est responsable de la planification des alertes et des travaux utilisés par l'agent SQL Server. Il est également utilisé par les autres fonctionnalités telles que SSMS, service de service et courrier de base de données.

De même, vous assurer que vous avez une copie de sauvegarde mise à jour de la base de données MSDB est bonne.

Voici les restrictions de la base de données MSDB. Vous ne pouvez pas faire ce qui suit:

  1. Modifier la collation de la base de données MSDB
  2. Déposez la base de données
  3. Déposez l'utilisateur invité de la base de données MSDB
  4. Activer la capture de données de changement
  5. Définissez le groupe de fichiers principal sur Read_only
  6. Supprimer le groupe de fichiers primaire, le fichier journal ou le fichier de données primaire
  7. Renommer la base de données ou le groupe de fichiers primaire
  8. Définissez la base de données comme hors ligne
  9. Inscrivez-vous à la mise en miroir de la base de données

Base de données système du modèle SQL Server

La base de données du modèle dans le serveur SQL agit comme le plan ou le modèle pour toutes les bases de données créées dans ce serveur.

Une fois que vous avez créé une nouvelle base de données sur le serveur, la première partie de la base de données est construite en copiant le contenu de la base de données du modèle. Après cela, le serveur SQL remplit le reste avec des pages vides.

Il est donc essentiel que la base de données du modèle existe sur le serveur. En effet.

NOTE: Apporter des modifications aux bases de données du modèle garantissent que toutes les bases de données créées après cela hériteront de toutes ses modifications.

De même, les bases de données du modèle héritent des restrictions similaires à celles de MSBD et de la base de données maîtresse. Cependant, en outre, vous ne pouvez pas faire ce qui suit:

  1. Créer des procédures, des vues et des déclencheurs avec l'option de chiffrement.

Base de données du système de ressources SQL Server

La base de données des ressources est une base de données en lecture seule qui est responsable du stockage de tous les objets système inclus avec le serveur SQL.

Cette base de données ne contient aucune donnée utilisateur ni métadonnées utilisateur. Cette base de données rend la mise à niveau vers une nouvelle version SQL Server plus facile et beaucoup plus rapide car le processus ne nécessite pas de supprimer et de recréer les objets système.

Le processus de mise à niveau copie le fichier de base de données de ressources sur un serveur local et traite la mise à niveau par l'utilisateur de la base de données des ressources.

NOTE: Contrairement à d'autres bases de données système, le serveur SQL ne peut pas sauvegarder la base de données des ressources. Cependant, vous pouvez le sauvegarder manuellement.

Base de données SQL Server Tempdb

Vous connaissez probablement le tempdb dans le serveur SQL. Cette base de données stocke des objets utilisateur temporaires tels que des tables temporaires, des index, des procédures stockées, des variables de table, des curseurs, des fonctions, etc.

Il stocke également des objets internes qui sont créés par le moteur de base de données. Il s'agit notamment de tables de travail, de fichiers de travail, etc.

Enfin, le tempdb stocke également les magasins de la version. Les magasins de version sont une collection de pages de données qui contient les lignes de données pour le versioning de ligne.

DOS:

Voici quelques-unes des opérations et des tâches auxquelles vous devez adhérer aux bases de données système:

  1. Pour éviter la corruption de votre instance SQL Server, ayez toujours une copie de sauvegarde de toutes les bases de données système avant d'apporter des modifications sur le serveur.
  2. Audit constamment toutes les informations et paramètres disponibles dans les bases de données système avant de s'engager.
  3. Si vous souhaitez récupérer les informations du système, utilisez les vues du catalogue système, SQL-SMO, les procédures stockées du système et les fonctions intégrées, les fonctions de catalogue, les méthodes et les attributs et l'interface WMI. Ne jamais interroger le système les bases de données directement.

Faire:

  1. Ne modifiez jamais aucune valeur directement dans les bases de données système (sauf TempDB).
  2. N'allumez jamais la propriété digne de confiance dans la base de données principale. Cela réduit considérablement la sécurité de votre serveur car le serveur SQL fait toujours confiance au contenu de la base de données maître, malveillant ou non.
  3. N'écrivez jamais les requêtes Transact-SQL qui interrogent directement les données des bases de données système. À moins que l'interrogation des bases de données système soit le seul moyen d'obtenir lesdites informations.
  4. Ne modifiez pas ou n'écrivez jamais à une base de données système.

Ce sont des règles et des précautions concernant la base de données système. Bien qu'il soit possible de réparer certaines bases de données système, cela entraîne une perte de données sévère et peut rendre l'instance SQL Server entière inutilisable.

Conclusion

Nous sommes ravis de vous rejoindre dans notre parcours pour explorer les bases de données système dans le serveur SQL. Nous espérons que vous avez appris quelque chose pour améliorer vos compétences SQL Server et devenir un meilleur administrateur de base de données.

Merci d'avoir lu! Rendez-vous dans notre prochain tutoriel.