MySQL pour les développeurs
Programme
Introduction, installation et prise en main
- Versions, panorama des fonctionnalités et des outils
- Ressources et documentation
- Procédure d’installation
- Paramétrages de post-installation et premiers tests
- L’outil client ligne de commandes mysql
- Présentation de l’outil graphique MySQL Query Browser
- Travaux pratiques
- Exemple complet d’installation sur un système Linux
Modèle relationnel, conception et création d’une base MySQL
- Éléments de conception d’un schéma de base de données
- Contraintes d’intégrité
- Types de données MySQL (numériques, chaînes, dates, typesspécifiques…)
- Fonctions intégrées de MySQL
- Types de tables (MyISAM, MEMORY, MERGE, InnoDB…)
- Création de bases et de tables
- Gestion des index
- La base INFORMATION_SCHEMA
- Travaux pratiques
- Conception et création d’une base « ecole » en tables MyISAM
- Visualisation du schéma des tables
- Insertion de données, vérification des contraintes
Pratique du SQL avec MySQL
- Sélections simples, comparaisons, tris
- Sélections multitables, différents types de jointures
- Requêtes imbriquées
- Requêtes préparées
- Recherches full-text
- Modifications (insertions, mises à jours, suppressions)
- Gestion des vues
- Travaux pratiques
- Sélections simples
- Sélections multiples, jointures internes et externes, requêtes imbriquées
- Modifications et suppressions de données
- Création et utilisation des vues
Tables transactionnelles InnoDB
- Notion de transaction, niveaux d’isolation
- Structure physique des tables
- Programmation des transactions (START TRANSACTION, COMMIT, ROLLBACK)
- Travaux pratiques
- Création d’une base « ecolebis » en tables InnoDB
- Mise en uvre de transactions
SQL Procédural
- Procédures stockées et fonctions
- Définition des procédures, appels, instructions de contrôle, curseurs
- Déclencheurs (triggers): création et utilisation
- Gestion des erreurs
- Travaux pratiques
- Écriture de procédures stockées
- Récupérations de résultats à l’aide de curseurs
- Création et utilisation de triggers
Connexions, droits d’accès, sécurité
- Principe d’authentification et de vérification des droits
- Gestion des utilisateurs et de leurs privilèges
- Sécurisation des procédures stockées
- Travaux pratiques
- Création de différents types de comptes MySQL
- Gestion des privilèges et des mots de passe
Maintenance des données
- Importation et exportation de données
- Les différents journaux de MySQL (erreurs, requêtes, requêteslentes, journal binaire)
- Types et stratégies de sauvegardes
- La commande mysqldump
- Travaux pratiques
- Exportation de données vers des fichiers texte, réimportation des données
- Activation des différents journaux
- Sauvegardes et restaurations avec la commande » mysqldump »
Aspects avancés, optimisation
- Jeux de caractères, internationalisation
- Formats géométriques, données géographiques
- Optimisation des requêtes (types d’index, interprétation de l’outil EXPLAIN)
- Interfaces de programmation (exemple PHP/MySQL)
- Connecteurs MySQL