Durée de la formation
-
Débutant : 1 semaine, 10 à 15 heures.
-
Intermédiaire : 2 à 3 semaines, 15 à 20 heures.
-
Avancé : 3 à 4 semaines, 20 à 30 heures.
Objectifs de la formation MySQL
-
Comprendre les bases des bases de données relationnelles et savoir manipuler les données avec MySQL.
-
Maîtriser les requêtes SQL pour créer, lire, mettre à jour et supprimer des données.
-
Optimiser les performances des bases de données avec l'indexation et les jointures efficaces.
-
Assurer la sécurité et la gestion des utilisateurs dans MySQL.
-
Administrer les bases de données MySQL (sauvegarde, réplication, optimisation).
-
Mettre en place des solutions avancées comme les transactions, les triggers, et les procédures stockées.
Module 1 : Introduction à MySQL et Bases de données relationnelles (Débutant)
-
Introduction aux bases de données relationnelles : Concepts clés (tables, colonnes, lignes, clés primaires/étrangères).
-
Introduction à MySQL : Qu'est-ce que MySQL, pourquoi l'utiliser ? Différences entre MySQL, MariaDB, et d'autres systèmes de gestion de bases de données.
-
Installation de MySQL : Installation sur différentes plateformes (Windows, macOS, Linux) et configuration initiale.
-
Connexion à MySQL : Utilisation de la ligne de commande MySQL et des outils graphiques comme MySQL Workbench ou phpMyAdmin.
-
Création d'une base de données : Syntaxe de base, création de tables, définition des types de données.
Module 2 : Manipulation des données (CRUD - Create, Read, Update, Delete)
-
Insertion de données : Utilisation de la commande
INSERT
pour ajouter des enregistrements. -
Sélection de données : Utilisation de la commande
SELECT
pour récupérer des données. Introduction à la clauseWHERE
,ORDER BY
, etLIMIT
. -
Mise à jour de données : Utilisation de la commande
UPDATE
pour modifier des enregistrements existants. -
Suppression de données : Utilisation de la commande
DELETE
pour supprimer des enregistrements. -
Filtres avancés avec
WHERE
: Comparateurs, opérateurs logiques (AND
,OR
,NOT
), expressions régulières.
Module 3 : Conception de bases de données et relations
-
Conception de schémas de base de données : Concepts de normalisation, formes normales (1NF, 2NF, 3NF), éviter la redondance de données.
-
Relations entre tables : Relations un-à-un, un-à-plusieurs, plusieurs-à-plusieurs, et mise en place de clés étrangères.
-
Intégrité référentielle : Utilisation des contraintes de clés étrangères pour maintenir l'intégrité des données entre les tables.
Module 4 : Fonctions SQL et Opérations Avancées
-
Fonctions d’agrégation : Utilisation de
COUNT
,SUM
,AVG
,MAX
,MIN
pour effectuer des calculs sur les données. -
Groupes de résultats : Utilisation de la clause
GROUP BY
pour regrouper les résultats etHAVING
pour filtrer les groupes. -
Sous-requêtes : Introduction aux sous-requêtes (subqueries) dans les clauses
SELECT
,WHERE
,FROM
. -
Fonctions SQL intégrées : Manipulation de chaînes (
CONCAT
,SUBSTRING
), dates (NOW
,DATE_FORMAT
), mathématiques (ROUND
,FLOOR
,CEIL
).
Module 5 : Joins et Relations complexes
-
Introduction aux jointures : Comprendre les différentes jointures (INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN).
-
Jointures multiples : Utilisation de plusieurs jointures pour interroger plusieurs tables en même temps.
-
Union de requêtes : Utilisation de
UNION
etUNION ALL
pour combiner les résultats de plusieurs requêtes. -
Exemples pratiques de jointures : Cas réels d'utilisation des jointures dans des bases de données relationnelles.
Module 6 : Indexation et Optimisation des Requêtes
-
Introduction aux index : Concepts d'index pour optimiser les performances des requêtes, types d'index (index simples, index composites).
-
Utilisation des index : Création et suppression d'index (
CREATE INDEX
,DROP INDEX
). -
Analyse des requêtes : Utilisation de
EXPLAIN
pour analyser les performances des requêtes. -
Optimisation des bases de données : Techniques pour optimiser la structure des tables et des requêtes (partitionnement, gestion des performances).
Module 7 : Transactions et Concurrence
-
Introduction aux transactions : Définition et utilisation des transactions dans MySQL (
BEGIN
,COMMIT
,ROLLBACK
). -
Propriétés ACID : Atomicité, Cohérence, Isolation, Durabilité.
-
Gestion de la concurrence : Verrouillage des tables et des lignes, mécanismes de gestion des accès concurrents (optimistic locking, pessimistic locking).
Module 8 : Sécurité et gestion des utilisateurs
-
Gestion des utilisateurs et permissions : Création et gestion des utilisateurs MySQL, définition des permissions avec
GRANT
etREVOKE
. -
Sécurisation des connexions : Utilisation de connexions sécurisées SSL/TLS, configuration du pare-feu MySQL.
-
Sauvegarde et restauration : Sauvegarde des bases de données avec
mysqldump
, restauration avecmysql
et autres outils. -
Audit et logs : Mise en place de journaux d'audit, analyse des logs MySQL pour détecter des problèmes de sécurité.
Module 9 : Administration des bases de données (DBA)
-
Sauvegardes automatisées : Programmation de sauvegardes régulières avec des outils comme
cron
(sous Linux). -
Réplication MySQL : Introduction à la réplication maître-esclave pour la redondance et la haute disponibilité.
-
Surveillance des performances : Surveillance des performances de MySQL avec des outils comme
MySQL Workbench
,top
, ethtop
. -
Mises à jour et maintenance : Comment effectuer des mises à jour de MySQL en minimisant les interruptions de service.
Module 10 : MySQL avancé et cas d'utilisation
-
Triggers : Création de déclencheurs (
AFTER
,BEFORE
) pour automatiser des actions lors des insertions, mises à jour, ou suppressions. -
Vues : Utilisation de vues pour simplifier les requêtes complexes et améliorer la sécurité des données.
-
Procédures stockées et fonctions : Création et utilisation de procédures stockées et de fonctions pour encapsuler la logique métier dans MySQL.
-
Gestion des grands ensembles de données : Stratégies de partitionnement des tables pour gérer de très grandes bases de données.
Conditions pour une formation en MySQL
1. Inscriptions et paiement
- Les participants doivent s'inscrire avant la date limite indiquée sur le formulaire d'inscription.
- Le paiement des frais de formation doit être effectué avant le début des sessions. Aucune inscription ne sera validée sans paiement.
- Les annulations doivent être signalées au moins 7 jours avant le début de la formation pour un remboursement complet. Après cette date, des frais d'annulation peuvent s'appliquer.
2. Prérequis pour la formation
- Avoir des notions de base en informatique et en programmation (familiarité avec des langages comme Python ou PHP est un plus).
- Les participants doivent comprendre les concepts de base des bases de données (tables, colonnes, lignes).
- Disposer d’un ordinateur personnel avec MySQL installé. Une assistance pour l’installation de MySQL peut être fournie avant la première session.
3. Durée et organisation
- La durée de la formation est déterminée selon le programme choisi (débutant, intermédiaire, ou avancé). Typiquement, une session s’étend sur plusieurs semaines avec des cours quotidiens ou hebdomadaires.
- Les participants doivent s’engager à suivre l’intégralité des sessions pour maximiser leur apprentissage.
- Un planning détaillé sera fourni avant le début de la formation, avec des horaires fixés pour chaque session. Toute absence doit être signalée au préalable.
4. Matériel nécessaire
- Chaque participant doit disposer d'un ordinateur avec MySQL et un environnement de développement tel que MySQL Workbench ou phpMyAdmin installé.
- Une connexion Internet stable est nécessaire pour les formations en ligne, ainsi que des outils de communication (Zoom, Teams, etc.).
- Les supports de cours (présentations, exercices pratiques) seront fournis à chaque étape de la formation.
5. Objectifs pédagogiques
- Apprendre à manipuler des bases de données MySQL (création, lecture, mise à jour, suppression de données).
- Comprendre les concepts fondamentaux de SQL (requêtes, jointures, sous-requêtes, fonctions d’agrégation).
- Optimiser les performances des bases de données à l’aide d'index, et savoir administrer et sécuriser une base de données MySQL.
- Découvrir les fonctions avancées de MySQL comme les transactions, procédures stockées, et triggers.
6. Évaluation et certification
- La formation comprend des évaluations intermédiaires sous forme de tests pratiques, exercices, et quiz pour mesurer les progrès des participants.
- À la fin de la formation, les participants devront réaliser un projet pratique qui démontre leur maîtrise des concepts appris.
- Un certificat de réussite sera délivré aux participants ayant complété la formation avec succès et respecté les critères de participation et de compétences.
7. Comportement et discipline
- Les participants sont tenus de respecter les horaires des sessions et de participer activement aux discussions et aux exercices.
- Un comportement respectueux et professionnel est attendu. Tout acte de plagiat ou comportement inapproprié peut entraîner une exclusion sans remboursement.
- Pour les sessions en ligne, les participants doivent s’assurer de ne pas être dérangés et d’éviter les distractions pendant la formation.
8. Modalités d'annulation et de remboursement
- En cas d'annulation par l'organisateur pour des raisons indépendantes de la volonté des participants, un remboursement total sera effectué ou une autre session sera proposée.
- Les participants peuvent annuler leur inscription jusqu’à 7 jours avant le début de la formation pour obtenir un remboursement. Après cette période, un remboursement partiel peut être appliqué.
9. Support et assistance post-formation
- Un support technique et pédagogique est disponible pendant toute la durée de la formation.
- Les participants bénéficieront d'un accès aux supports de cours (documents, enregistrements) après la formation.
- Une assistance supplémentaire peut être offerte pendant une période définie après la formation pour répondre à des questions ou fournir un soutien sur des projets personnels.