ADMINISTRATION DES BASES DE DONNÉES
MODULE 1 : Introduction à l’administration des bases
de données
1. Présentation du module
● Intitulé : Introduction à l’Administration des Bases de Données
● Volume horaire : 4 à 6 heures (2h Cours + 2h TP + 1–2h Exercices)
● Pré-requis :
○ Notions de bases de données relationnelles
○ SQL de base (SELECT, INSERT, UPDATE, DELETE)
○ Connaissance de MySQL
2. Objectifs pédagogiques du module
À la fin de ce module, l’étudiant sera capable de :
1. Définir ce qu’est l’administration des bases de données
2. Expliquer le rôle et les responsabilités d’un DBA
3. Différencier conception, développement et administration BD
4. Identifier les différents types de SGBD
5. Décrire l’architecture générale d’un SGBD (cas MySQL)
6. Comprendre les enjeux de disponibilité, sécurité et performance
3. Introduction générale
Dans un système informatique moderne, la donnée est un élément critique.
Une base de données mal administrée peut entraîner :
● Perte de données
● Arrêt des applications
● Faille de sécurité
● Mauvaises performances
L’administration des bases de données vise donc à assurer la disponibilité, la sécurité
et la performance des données.
4. Le rôle de l’Administrateur de Base de Données
(DBA)
4.1 Définition
Un DBA (Database Administrator) est la personne chargée de :
● Installer
● Configurer
● Surveiller
● Sécuriser
● Sauvegarder
● Optimiser
les bases de données d’une organisation.
4.2 Responsabilités principales du DBA
Domaine Description
Disponibilité La base doit être accessible 24h/24
Sécurité Protéger les données contre les accès non
autorisés
Performance Assurer des temps de réponse rapides
Sauvegarde Éviter toute perte de données
Maintenance Mises à jour, correctifs, nettoyage
4.3 Différence entre les rôles
Rôle Responsabilité
Analyste Analyse des besoins
Concepteur Modélisation (MERISE, UML)
Développeur Écriture SQL, applications
DBA Exploitation et gestion du SGBD
Un développeur crée la base, le DBA la fait vivre.
5. Types de Systèmes de Gestion de Bases de Données
(SGBD)
5.1 SGBD relationnels (RDBMS)
● Basés sur les tables et relations
● Utilisent SQL
Exemples :
● MySQL / MariaDB
● PostgreSQL
● Oracle
● SQL Server
✔ Très utilisés en entreprise
✔ Solides et fiables
5.2 SGBD NoSQL (aperçu)
● Données non relationnelles
● Forte scalabilité
Exemples :
● MongoDB (documents)
● Redis (clé-valeur)
Le DBA moderne doit connaître les deux mondes.
6. Architecture générale d’un SGBD (cas MySQL)
6.1 Architecture client / serveur
Application / Client
↓
Serveur MySQL
↓
Fichiers de données
6.2 Composants principaux
1. Client
○ MySQL Workbench
○ Ligne de commande
○ Application Web
2. Serveur MySQL
○ Gère les requêtes SQL
○ Contrôle les accès
○ Optimise les requêtes
3. Moteur de stockage
○ InnoDB (par défaut)
○ Gère les fichiers de données
4. Fichiers
○ Fichiers de données
○ Logs
○ Fichiers de configuration
7. Enjeux majeurs de l’administration BD
7.1 Disponibilité
● Pannes serveur
● Coupures réseau
7.2 Sécurité
● Accès non autorisés
● Attaques (SQL Injection)
7.3 Performance
● Requêtes lentes
● Mauvaise configuration
7.4 Intégrité
● Cohérence des données
● Transactions
8. TP 1 : Découverte de l’environnement MySQL
Objectif du TP
● Identifier les éléments administratifs de MySQL
● Comprendre l’environnement serveur
Travail demandé
1. Vérifier que MySQL est installé
2. Se connecter en tant qu’administrateur
3. Lister les bases existantes
4. Identifier les utilisateurs
5. Identifier le moteur de stockage utilisé
Commandes utiles
SHOW DATABASES;
SELECT user, host FROM [Link];
SHOW VARIABLES LIKE 'datadir';
SHOW ENGINES;
Questions TP
1. Quel est le moteur de stockage par défaut ?
2. Où sont stockées les données ?
3. Combien d’utilisateurs existent sur le serveur ?
9. Exercices d’application
Exercice 1
Expliquez en quelques lignes le rôle d’un DBA dans une banque.
Exercice 2
Citez et expliquez 4 responsabilités majeures d’un administrateur BD.
Exercice 3
Différenciez un SGBD relationnel et un SGBD NoSQL.
10. Résumé du module
● L’administration BD est essentielle en entreprise
● Le DBA garantit la disponibilité, la sécurité et la performance
● MySQL fonctionne selon une architecture client/serveur
● Le DBA ne développe pas, il exploite et sécurise