Rechercher une formation et ses disponibilités
Formation MySQL Développeur
La formation MySQL Développeur a pour objectif de vous permettre de maîtriser la création de requêtes SQL optimisées pour la base de données Open Source MySQL.
Nous commencerons par évoquer les bonnes pratiques de création et de modélisation d'une base MySQL avant de voir les différents types de données. Viendra ensuite l'étude d'une des caractéristiques intéressantes de MySQL : les moteurs de stockage.
Fort de ces bases nous attaquerons les requêtes SQL en commençant par la base et en allant sur des sujets plus pointus tels que les jointures, les sous requêtes, les vues et les transactions. Enfin nous aborderons la programmation coté serveur et l'optimisation.
Objectifs de cette formation MySQL Développeur
- Utiliser les fonctionnalités avancées de MySQL pour l'écriture de requêtes
- Savoir gérer les accès concurrents aux données avec les différents moteurs
- Maîtriser les possibilités de développement avec MySQL : procédures stockées et déclencheurs
Public de cette formation MySQL Développeur
- Développeurs d'applications utilisant des bases de données MySQL
Pré-requis de cette formation MySQL Développeur
- Comprendre les principes des bases de données relationnelles
Programme de cette formation MySQL Développeur
Introduction et les différents projets
- MySQL : historique, double licence gratuite/payante
- MariaDB : alternative OpenSource
- Percona : Percona Toolkit
Création des bases
- Créer et supprimer une base (CREATE DATABASE et DROP DATABASE)
- Gérer l'internationalisation (jeux de caractères et interclassement)
- Modélisation : la normalisation (NF1 à NF6)
- Modélisation : la dénormalisation, quand, pourquoi et comment
Les types de données
- Types numériques (INTEGER, FLOAT, DECIMAL) et leurs limitations et cas d'utilisation
- Types caractères (CHAR, VARCHAR, TEXT) et leurs propriétés
- Types date (DATE, DATETIME,TIMESTAMP) et leurs propriétés
Les moteurs de stockage
- L'architecture d'un serveur MySQL : découplage moteur SQL / stockage
- L'architecture d'un serveur MySQL : implications en terme de fonctionnalités
- Moteur MyISAM : moteur historique, fonctionnalités restreintes
- Moteur InnoDB : moteur transactionnel, fonctionnalités attendues d'un SGBD
- Autres moteurs : Memory, Archive...
Requêtes simples
- La structure d'une requête SELECT ? FROM ? WHERE ? (SFW)
- Les autres clauses : GROUP BY, HAVING, ORDER BY, LIMIT
- Les fonctions d'agrégation
- Les commandes INSERT, UPDATE et DELETE et les extensions spécifiques à MySQL
Jointures et sous-requêtes
- Jointures internes / externes
- Sous-requêtes
Vues
- Cas d'utilisation
- Simplifier les requêtes en utilisant des vues
- Création d'une vue
- Vues de mise à jour et d'insertion
- Limitations des vues
Programmation côté serveur
- Procédures stockées
- Déclencheurs
- Evénements
Transactions
- Norme ACID
- Niveaux d'isolation
- Verrouillage
Importation et exportation
- LOAD DATA INFILE
- SELECT ... INTO OUTFILE ...
- clients mysqldump et mysqlimport
Optimisation
- Bonnes pratiques d'écriture des requêtes
- Règles et stratégie d'indexation
- Fonctionnement de l'optimiseur
- La commande EXPLAIN
- Identification des requêtes lentes