- 1. Prsentation de la formation:MySQL :
Administration(1Z0-883)Site : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com
2. Le formateur Noureddine DRISSI Expertise dans le domaine des
bases de donnes 15 annes dexprience sur tous les SGBDR du march
(Mysql, Oracle, SQL Server,Postgresql,DB2, MongoDB) Issue de
lenvironnement bancaire [email protected] Mon profil sur
alphorm.com : http://www.alphorm.com/auteur/noureddine-drissi Mes
formations sur alphorm.comMySQL : Administration (1Z0-883)
alphorm.com 3. Connaissances pralables Connaissances du systme
dexploitation Linux/UNIX Exprience professionnelle du langage SQL
Exprience professionnelle des bases de donnes relationnelles
Exprience en matire de conception de bases de donnesMySQL :
Administration (1Z0-883) alphorm.com 4. A propos de ce cours
Objectifs : Comprendre et dcrire larchitecture de MySQL Installer
et mettre jour MySQL Administrer et configurer MySQL Utiliser les
outils MySQL tel que MySQL WorkBench Comprendre et mettre en oeuvre
les diffrents moteurs de stockage (InnoDB, MyISAM,MEMORY, CSV...)
Comprendre et grer la scurit sous MySQL Comprendre et mettre en
oeuvre la rplication sous MySQL Comprendre et dcrire les techniques
doptimisation de MYSQL Raliser les oprations de sauvegarde et
restaurationMySQL : Administration (1Z0-883) alphorm.com 5. Plan du
cours Module 1 : Introduction MySQL Module 2 : Architecture de
MySQL Module 3 : Installation de MySQL Module 4 : Configuration de
MySQL Module 5 : Clients et outils MySQL Module 6 : Types de donnes
MySQL Module 13 : Maintenance des tables sousMySQL Module 14 :
Import et export des donnessous MySQL Module 15 : Programmation
dans MySQL Module 16 : Sauvegarde et restauration sousMySQL Module
7 : Obtention des mtadonnes Module 8 : Transactions et verrous
Module 9 : Moteur de stockage MySQL Module 10 : Le partionnnement
sous MySQL Module 11 : Gestion des utilisateurs Module 12 : Gestion
de la scurit Module 17 : Rplication sous MySQL Module 18 :
Introduction loptimisation desperformances Module 19 :
ConclusionMySQL : Administration (1Z0-883) alphorm.com 6.
CertificationCette formation vous prpare l'examen de la
certification:MySQL for Database Administrators (1Z0-883)MySQL :
Administration (1Z0-883) alphorm.com 7. Liens utiles Formations et
certifications MySQL http://education.oracle.com Tlchargement MySQL
http://www.oracle.com/fr/downloads/index.html Guide officiel :
http://www.amazon.com/MySQL-Database-Administrator-Guide-1Z0-883/dp/0071775781MySQL
: Administration (1Z0-883) alphorm.com 8. GOMySQL : Administration
(1Z0-883) alphorm.com 9. Prsentation de la
formation:LenvironnementSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 10. Environnement Prs-requis Espace disque de
20G OS Linux Centos 6.x ou Windows (Server, XP, ...)InternetNom:
pyramide01IP: 192.168.1.117Espace disque: 20GoCPU: i7 (4
coeurs)RAM: 1GoOS: Centos 6.3MySQL 5.6MySQL : Administration
(1Z0-883) alphorm.com C: 11. Introduction MySQLMySQL :
Administration (1Z0-883) alphorm.com 12. Prsentation de MysqlSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 13. Prsentation de MySQL Historique de MySQL
Cre par la socit TCX Le 23 mai 1995: premire version de MySQL
Maintenue par la socit sudoise MySQL AB Floue sur lorigine du nom
MySQL Le 16 janvier 2008: rachat de MySQL AB par Sun Microsystems
pour 1 milliardde dollars 2009: acquisition de Sun Microsystems par
Oracle Corporation aprsautorisation de la commission europenne
2009: cration de MariaDB en tant que projet Open SourceMySQL :
Administration (1Z0-883) alphorm.com 14. Prsentation de MySQL MySQL
Systme de gestion de base de donnes Open Source Rapide, robuste et
facile dutilisation Architecture client/serveur Fourni avec de
nombreux outils Compatibilit avec de nombreux langages de
programmation Forte interoprabilit avec le langage PHP
Multiplateformes (Unix, Linux et Windows) Interrogeable via
SQLMySQL : Administration (1Z0-883) alphorm.com 15. Prsentation de
MySQL Les apports de la version 5 Les procdures stockes Les
fonctions Les triggers Les curseurs Les vues Possibilit dmuler les
vues matrialises Partitionnement des tables Rplication au niveau
lignesMySQL : Administration (1Z0-883) alphorm.com 16. Prsentation
de MySQLInstallation de MySQLMySQL : Administration (1Z0-883)
alphorm.com 17. Installation de MySQLInstallation via packageSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 18. Installation via package Caractristiques
La plus simple Ncessite deux packages au minimum-
mysql-server-version.rpm- mysql-client-version.rpmExemple de
commande sous Centos:shell yum install mysql-server
mysql-clientMySQL : Administration (1Z0-883) alphorm.com 19.
Pr-installationInstallation partir des sourcesMySQL :
Administration (1Z0-883) alphorm.com 20. Installation de
MySQLInstallation sous WindowsSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 21. Installation sous Windows Deux solutions
Utiliser linstalleur- Simple et rapide Pr-requis: installation de
.Net Framework 4.0 Utiliser les binaires- Ncessite de crer un
fichier de configuration de linstanceNote: tlchargement de Mysql
partir du site http://www.mysql.comMySQL : Administration (1Z0-883)
alphorm.com 22. Installation sous WindowsMise jour de MySQLMySQL :
Administration (1Z0-883) alphorm.com 23. Installation de MySQLMise
jour de MySQLSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 24. Mise jour de MySQL Bonnes pratiques En
terme de version- Limiter le nombre dcart en terme de version
Possibilt de passer dune version mineure une autre version mineure
sanspasser par toutes les versions mineures- Passer par toutes les
versions manjeures dans le cas dune mise jour duneversion majeure
une autre version majeureMySQL : Administration (1Z0-883)
alphorm.com 25. Mise jour de MySQL Bonnes pratiques La prparation-
Lire la documentation de la version cible- Raliser une sauvegarde
complte systmatiquement avant toute opration demise jour (logique
et physique)MySQL : Administration (1Z0-883) alphorm.com 26. Mise
jour de MySQL Bonnes pratiques Les tapes- Sauvegarde logique et
physique- Arrt du serveur MySQL- Mise jour les binaires MySQL-
Dmarrage de MySQL- Vrification des tables mysql_upgrade (vrifie
toutes les tables + rparation si ncessaire +adaptation des
droits)MySQL : Administration (1Z0-883) alphorm.com 27.
Installation sous WindowsInstallation de la base factMySQL :
Administration (1Z0-883) alphorm.com 28. Installation de
MySQLInstallation de la base factSite : http://www.alphorm.comBlog
: http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 29. Installation de la base fact Sources
(tlchargeable partir de la plateforme Alphorm) Excution du script
fact.sql shellmysql -uroot [ -P ] numero_port [ -p
]/chemin_du_scriptMySQL : Administration (1Z0-883) alphorm.com 30.
Installation de la base factArchitecture de MySQLMySQL :
Administration (1Z0-883) alphorm.com 31. Architecture de
MySQLInstance MySQLSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 32. Instance MySQL Une instance est
caractrise par Un fichier de configuration (my.cnf pour UNIX/Linux
et my.ini pour Windows) Un processus serveur mysqld Une socket
(accs local) ou port dcoute TCP/IP (par defaut 3306) Un moteur
MySQL (basedir) Un rpertoire de stockage des donnes (datadir) Un
cache mmoire (avec des sous caches) Des fichiers de logs (log
binaire, log derreur, log des requtes lentes, log gnral) Des bases
de donnes (mysql, information_schema et performance_schema)MySQL :
Administration (1Z0-883) alphorm.com 33. Instance MySQL
Configuration type du fichier
my.cnf[mysql]port=3307[mysqld]bind-address=0.0.0.0port=3307basedir=/usrdatadir=/u101/mysql/data/instance01socket=/u101/mysql/sockets/instance01/mysql3307.socklog-error=/u101/mysql/log/instance01/mysqld3307.logMySQL
: Administration (1Z0-883) alphorm.com 34. Instance MySQL Les tapes
dinitialisation dune nouvelle instance Cration de laborescence
Attribution des droits Cration du fichier my.cnf Excution du script
mysql_install_db pour initialiser les bases systmes(mysql)shell
mysql_install_db --basedir=chemin_moteur
--datadir=chemin_de_stockage Dmarrage de linstanceshell mysqld
--defaults-file=chemin/fichier_my.cnfMySQL : Administration
(1Z0-883) alphorm.com 35. Instance MySQLArrt et dmarrage dune
instanceMySQL : Administration (1Z0-883) alphorm.com 36.
Architecture de MySQLArrt et dmarrage duneinstanceSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 37. Arrt et dmarrage dune instance Dmarrage
de MySQL Sous UNIX/LINUX- En utilisant le script
/etc/init.d/mysqldshell /etc/init.d/mysqld start | restart- En
utilisant le script mysqld_safeshell mysqld_safe
--defaults-file=path --basedir=chemin_moteur --datadir=chemin_data
--log-log-error=chemin_log --user=user_mysql- En utilisant
directement le programme mysqld Sous Windows- En utilisant le
gestionnaire de services- Via la commande: net start
nom_serviceMySQL : Administration (1Z0-883) alphorm.com 38. Arrt et
dmarrage dune instance Arrt de MySQL Sous UNIX/LINUX- En utilisant
le script /etc/init.d/mysqldshell /etc/init.d/mysqld stop- En
utilisant le programme mysqladminshell mysqladmin [ -u user ] [ -p
] [ -h hostname ] shutdown Sous Windows- En utilisant le
gestionnaire de services- Via la commande: net stop
nom_serviceMySQL : Administration (1Z0-883) alphorm.com 39. Arrt et
dmarrage dune instanceLe cache MySQLMySQL : Administration
(1Z0-883) alphorm.com 40. Architecture de MySQLLe cache MySQLSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 41. Le cache MySQL Architecture (cache dune
instance)Mmoire partage Mmoire par
threadkey_buffer_sizeinnodb_buffer_pool_sizetmp_table_sizesort_buffer_sizetable_cachequery_cacheread_buffer_size......MySQL
: Administration (1Z0-883) alphorm.com 42. Le cache MySQLLes logs
MySQLMySQL : Administration (1Z0-883) alphorm.com 43. Architecture
de MySQLLes bases de donnessous MySQLSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 44. Les bases de donnes sous MySQL Racine
datadirBases dedonnesJournauxJournauxbinaires pourle moteurbinaires
pourle moteurinnodbinnodbFichier datapour lestablesinnodbMySQL :
Administration (1Z0-883) alphorm.com 45. Les bases de donnes sous
MySQL Gnralits Une base MySQL est constitue dun rpertoire identique
au nom de la base Le rpertoire contient des fichiers- Extension:
.frm (structure de la table) Lemplacement des bases est spcifi via
le paramtre datadir Une base = schema Il existe trois bases de
donnes par dfaut lors de linstallation- mysql = base systme-
information_schema = dictionnaire de donnes (virtuelle)-
performance_schema (depuis a version 5.5)MySQL : Administration
(1Z0-883) alphorm.com 46. Les bases de donnes sous MySQL
Caractristiques Le nom de la base de donnes est sensible la casse-
lower_case_table_names = 1 (pour forcer la cration en miniscule)
Pour travailler, une session doit possder une base de donnes
courante. Une rfrence une table sans prfixe dsigne cette table dans
la base de donnescourante Pour connatre la base de donnes
courantemysql SELECT database(); Pour changer de base de donnes
courantemysql use nom_baseMySQL : Administration (1Z0-883)
alphorm.com 47. Les bases de donnes sous MySQL Cration et
suppression La commande CREATE DATABASE permet de crer une base de
donnes. Syntaxe gnralemysql CREATE DATABASE nom_base; La commande
DROP DATABASE permet de supprimer une base de donnes Syntaxe
gnralemysql DROP DATABASE nom_base;MySQL : Administration (1Z0-883)
alphorm.com 48. Les bases de donnes sous MySQLLa configuration de
MySQLMySQL : Administration (1Z0-883) alphorm.com 49. Configuration
de MySQLLes mthodes deconfiguartionSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 50. Les mthodes de configuration Prsentation
Configuration lors de la compilation avec le script configure Dans
le fichier de configuaration my.cnf (my.ini sous Windows)
Directement en tant que paramtre avec le programme mysqld Dune
manire dynamique chaudMySQL : Administration (1Z0-883) alphorm.com
51. Les mthodes de configuration Configuration via le fichier
my.cnf Localisaton- Linux /etc/, /etc/mysql, SYSCONFDIR,
$MYSQL_HOME/ et ~/, .SYSCONFDIR Visualisation la liste des
rprtoires utiliss par MySQL$ mysqld --help --verbose | grep less-
Windows WINDIRmy.ini, WINDIRmy.cnf, C:my.ini, C:my.cnf,
INSTALLDIRmy.ini etINSTALLDIRmy.cnfNote: le fichier my.cnf est
utilis par tous les programmes fournis par MySQL(mysqld, mysql,
mysqldump, mysqld_safe, myisamchk...)MySQL : Administration
(1Z0-883) alphorm.com 52. Les mthodes de configuration Organisation
du fichier my.cnf Organiser en section- Chaque section correspond
un nom de programme sous la forme [ nom_programme ]-
my_print_defaultsnom_sectionpermet de visualiser les options dune
section Chaque paramtre est de la forme- nom_paramtre = valeur Pour
les options binaires, il suffit de spcifier le nom du paramtre-
enable-innodb Les lignes en commentaires commencent par # ou un ;
Possibilit dinclure des fichiers- !include nom_fichier.cnf et
!includedirchemin MySQL : Administration (1Z0-883) alphorm.com 53.
Les mthodes de configuration Modles de fichier my.cnf my-small.cnf
(poste de travail) my-medium.cnf (poste de travail) my-large.cnf
(serveur avec mois de 2 de Go de RAM) my-huge.cnf (pour les
serveurs avec 2Go de RAM) my-heavy-4G.cnf (pour les serveurs avec
4Go de RAM)MySQL : Administration (1Z0-883) alphorm.com 54. Les
mthodes de configuration Paramtrage via le programme mysqld Les
paramtres sont prcds par -- Les mmes que ceux spcifis dans le
fichier my.cnf Pour connatre la liste exhaustive des
paramtresmysqld --help --verbose Possibilit de spcifier un fichier
en paramtre mysqld- --defaults-file=fichier.cnf-
--defaults-extra-file=fichier.cnfMySQL : Administration (1Z0-883)
alphorm.com 55. Les mthodes de configuration Paramtrage dynamique
de MySQL Deux niveaux de modifications- Au niveau session: SET
SESSION paramtre = valeur Toutes les variables nont pas une porte
au niveau session- Au niveau serveur: SET GLOBAL paramtre = valeur
Toutes les variables nont pas une porte SESSION et GLOBAL Ncssite
davoir le privilge SUPER Stocks en cache uniquement (perte aprs
redmarrage du serveur)MySQL : Administration (1Z0-883) alphorm.com
56. Les mthodes de configurationAffichage de la configurationMySQL
: Administration (1Z0-883) alphorm.com 57. Configuration de
MySQLAffichage de laconfigurationSite : http://www.alphorm.comBlog
: http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 58. Affichage de la configuration Les mthodes
de visualisation des paramtres MySQL Directement dans le fichier
my.cnf En utilisant la commande SHOW GLOBAL VARIABLES En utilisant
les tables GLOBAL_VARIABLES du schma virtuel INFORMATION_SCHEMA-
Pour visualiser les variables de niveau session, il faut utiliser
la table SESSION_VARIABLES En utilisant la commande SELECT
@@global.nom_variable En utilisant la commande STATUS pour afficher
ltat du serveurMySQL : Administration (1Z0-883) alphorm.com 59.
Affichage de la configurationPrsentation des principauxparamtres
MySQLMySQL : Administration (1Z0-883) alphorm.com 60. Configuration
de MySQLLes principaux paramtresMySQLSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 61. Les principaux paramtres MySQL
Configuration des logsParamtres Descriptionlog-bin Activation des
logs binaireslog_output Permet de dfinir le type de journalisation
(table, fichier ou aucun)slow_query_log_file Permet de dfinir
lamplacement du journal des requtes lentesslow_query_log Activation
du journal des requtes lenteslong_query_time Permet de dfinir la
dure dxecution dune requte avant de la journaliserlog-error Permet
de spcifier le journal des erreursgeneral_log_file Permet de
spcifier le journal des traces gnrales...MySQL : Administration
(1Z0-883) alphorm.com 62. Les principaux paramtres MySQL
Configuration de linstanceParamtres Descriptionport Numro de port
dcoute pour les connexions TCP/IPsocket Socket UNIX pour les
connexions localesbasedir Emplacement du moteur MySQLdatadir
Emplacement de stockages des donnestmpdir Emplacement pour stocker
les objets temporairesdefault_storage_engine Moteur de stockage du
serveurdefaults-file Fichier dinialisation de
linstancemax_connections Nombre de connexions maximum
linstanceMySQL : Administration (1Z0-883) alphorm.com 63. Les
principaux paramtres MySQL Configuration du cache mmoireParamtres
Descriptioninnodb_buffer_pool_size Taille du cache pour les donnes
et indexes innodbinnodb_file_per_table Permet de crer un fichier
.ibd par tableinnodb_log_buffer_size Taille du cache des journaux
dinnodbinnodb_log_file_size Taille des fichiers journaux
dinnodbinnodb_log_files_in_group Nombre de fichier journaux
dinnodbmax_heap_table_size Taille maximale des tables de type
MEMORYtmp_table_size Taille maximale en mmoire des tables
temporaires...MySQL : Administration (1Z0-883) alphorm.com 64. Les
principaux paramtres MySQLClients et outils MySQLMySQL :
Administration (1Z0-883) alphorm.com 65. Clients et outils
MySQLLoutil mysqlSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 66. Loutil mysql Caractristiques Permet
dxecuter les commandes SQL: mysql [ options ]- Les principales
optionsOptions Description--help Laide en ligne-h La machine qui
hberge linstance MySQL-u Le user qui se connecte MySQL-p Le mot de
passe-e Le script xcuter-P Le port dcoute de linstance-D Nom de la
base...MySQL : Administration (1Z0-883) alphorm.com 67. Loutil
mysqlLoutil mysqlshowMySQL : Administration (1Z0-883) alphorm.com
68. Clients et outils MySQLLoutil mysqlshowSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 69. Loutil mysqlshow Caractristiques Permet
de lister la liste des bases, tables et colonnes- Utilise les mmes
options de connection que le client MySQL Syntaxe mysqlshow
[OPTIONS] | [BASE] | [TABLE] | [CHAMP]MySQL : Administration
(1Z0-883) alphorm.com 70. Loutil mysqlshowLoutil mysqladminMySQL :
Administration (1Z0-883) alphorm.com 71. Clients et outils
MySQLLoutil mysqladminSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 72. Loutil mysqladmin Caractristiques
Utilitaire pour xcuter des commandes dadministration- Utilise les
mmes options de connection que le client MySQLCommandes
Descriptioncreate Permet de crer une base de donnesdrop Permet de
supprimer une base de donnesping Permet de tester laccs une
instance MySQLprocesslist Permet dafficher les sessions en
coursrefresh Vide de la mmoire toutes les tables, puis ferme et
rouvre les fichiers de logsstatus Affiche des statistiques
dutilisation de linstanceshutdown Permet darrter une
instancevariables Affiche la liste des variables de
linstanceversion Affiche la version de MySQL...MySQL :
Administration (1Z0-883) alphorm.com 73. Loutil mysqladminLes
outils graphiquesdadministrationMySQL : Administration (1Z0-883)
alphorm.com 74. Clients et outils MySQLLes interfaces
graphiquesdadministrationSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 75. Les interfaces graphiques dadministration
Les principaux outils graphiques PHPMyAdmin (Open Source)
Pr-requis:- Un serveur web : Apache, IIS- Un interprteur PHP Plus
maintenus- MySQL Administrator- MySQL Query Browser- MySQL
Migration ToolkitMySQL : Administration (1Z0-883) alphorm.com 76.
Les interfaces graphiques dadministration Les principaux outils
graphiques MySQL Workbench (anciennement MySQL Administrator)-
Tlchargement: http://dev.mysql.com/downloads/tools/workbench/-
Documentation : http://dev.mysql.com/doc/workbench/en/index.html-
Dmos : http://www.mysql.fr/products/workbench/demo.html- MySQL
Workbench Community: gratuit- MySQL Workbench Standard : environ
80/an (version pro, incluant notamment desfonctionnalits de
synchronisation, de validation et de documentation)- Diffrences
entre les 2 versions :
http://www.mysql.fr/products/workbench/features.html-
Multi-plateforme: Windows, Linux et Mac OSMySQL : Administration
(1Z0-883) alphorm.com 77. Les interfaces graphiques dadministration
MySQL Workbench (outil unifi) Permet- Crer,modifier ou supprimer
des objets- De grer les comptes utilisateurs- Deffectuer toutes les
oprations dadministration dune base de donnes- De faire de la
modlisation (Design)- Du dveloppement (Develop)- De ladministration
(Administer)- De migrer des donnes dun autre SGBDR vers MySQLMySQL
: Administration (1Z0-883) alphorm.com 78. Les interfaces
graphiques dadministrationLes types de donnes MySQLMySQL :
Administration (1Z0-883) alphorm.com 79. Les types de donnes
MySQLSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 80. Les types de donnes MySQL Les diffrents
types Trois grands types- Les types numriques- Les types Date et
heure- Les types de chanesMySQL : Administration (1Z0-883)
alphorm.com 81. Les types de donnes MySQL Les types numriques Types
de donnes entiersType Intervalle Taille (octets)
DescriptionTINYINT[(TM)] -127 128 1 Entiers trs courtsTINYINT[(TM)]
UNSIGNED 0 255 1 Entiers trs courtsSMALLINT[(TM)] UNSIGNED -32768
32767 2 Entiers trs courtsMEDIUMINT[(TM)] -8388608 8388607 3
Entiers de taille moyenneMEDIUMINT[(TM)] UNSIGNED 0 16777215 3
Entiers de taille moyenneINT[(TM)] -2^31 2^31-1 4 EntiersINT[(TM)]
UNSIGNED 0 2^32-1 4 EntiersBIGINT[(TM)] -2^63 2^63-1 8 Entiers
largesBIGINT[(TM)] UNSIGNED 0 2^64-1 8 Entiers largesMySQL :
Administration (1Z0-883) alphorm.com 82. Les types de donnes MySQL
Les types numriques Types de donnes virgule flottanteType
Intervalle Taille (octets) DescriptionFLOAT(prcision) Dpend de la
prcision varie =24 pour un nombre simple24 et =53 pour un nombreen
double prcisionFLOAT[(TM,P)] + ou -1.175494351E-384 Simple prcision
= FLOAT(4)+ ou -3.402823466E+38DOUBLE[(TM,P)] + ou
-1.797693134862357E+308+ ou -2.2250738585072014E-3088 Double
prcision = FLOAT(8)DECIMAL[(TM,P)] varie Enregistr dans un
CHARMySQL : Administration (1Z0-883) alphorm.com 83. Les types de
donnes MySQL Les types Date et heure Types de donnes date et
heureType Intervalle DescriptionDATE 1000-01-01 9999-12-31 Date
affiche au format YYYY-MM-DDTIME -838:59:59 838:59:59 Heure affiche
au format HH:MM:SSDATETIME 1000-01-01 00:00:00Date et heure
affiches au format YYYY-MM-MySQL9999-12-3
23:59:59MM-DDHH:MM:SSTIMESTAMP[(TM)] 1970-01-01 00:00:00
HorodatageYEAR[(TM)] 70 69 (1970 2069) Anne affichs sur 2 ou 4
digits: Administration (1Z0-883) alphorm.com 84. Les types de
donnes MySQL Les types de chanes Types de donnes de chane
classiqueType Intervalle Description[NATIONAL] CHAR(TM) 1 255 Chane
de longueur fixe[NATIONAL] VARCHAR(TM) 1 255 Chane de longueur
variableMySQL : Administration (1Z0-883) alphorm.com 85. Les types
de donnes MySQL Les types de chanes Types de donnes de chane TEXT
et BLOBType Intervalle DescriptionTINYBLOB 255 (2^8-1) Objet
binaire courtTINYTEXT 255 (2^8-1) Text courtBLOB 65535 (2^16-1)
Objet binaire de taille normaleTEXT 65535 (2^16-1) Texte de taille
normaleMEDIUMBLOB 16777215 (2^24-1) Objet binaire de taille
moyenneMEDIUMTEXT 16777215 (2^24-1) Texte de taille moyenneLONGBLOB
4294967295 (2^32-1) Objet binaire de grande tailleLONGTEXT
4294967295 (2^32-1) Texte de grande tailleMySQL : Administration
(1Z0-883) alphorm.com 86. Les types de donnes MySQL Les types de
chanes Types de donnes de chane ENUM et SETType Nombre de valeur
MAX DescriptionENUM(valeur1,valeur2,valeur2,...)65535 Les valeurs
doivent obligatoirement trescontenu dans la
listeSET(valeur1,valeur2,...) 64 Text courtMySQL : Administration
(1Z0-883) alphorm.com 87. Les types de donnes MySQL Optimisation du
typeshell SELECT colonne from TABLE PROCEDURE ANALYSE() GMySQL :
Administration (1Z0-883) alphorm.com 88. Les types de donnes
MySQLObtention des mtadonnesMySQL : Administration (1Z0-883)
alphorm.com 89. Obtention des mtadonnesSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 90. Obtention des mtadonnes La base
INFORMATION_SCHEMA Constitue le dictionnaire de donnes MySQL
Disponible depuis la version 5.0.2 de MySQL Les objets sont des
vues (non modifiable) Base de donnes (schma) virtuelle: pas de
fichiers physiques Fournis un accs aux mtadonnes sur Les bases Les
tables, les colonnes, les contraintes, les vues, etc., des bases de
donnes stockes sur leserveur MySQL. Les types de donnes des
colonnes ...MySQL : Administration (1Z0-883) alphorm.com 91.
Obtention des mtadonnes La base INFORMATION_SCHEMA Les principales
vuesVues DescriptionSCHEMATA Fournit des informations sur les bases
de donnesTABLES Fournit des informations sur les tablesCOLUMNS
Fournit des informations sur les colonnes dans les tablesSTATISTICS
Fournit des informations sur les tables dindexUSER_PRIVILEGES
Fournit des informations sur les droits globauxSCHEMA_PRIVILEGES
Fournit des informations sur les droits des schmasTABLES_PRIVILEGES
Fournit des informations sur les droits des tablesCOLUMN_PRIVILEGES
Fournit des informations sur les droits relis aux
colonnesCHARACTER_SETS Fournit des informations sur les jeux de
caractrs disponbiblesROUTINES Fournit des informations sur les
procdures stockes et les fonctionsVIEWS Fournit des informations
sur les vues dans les bases...MySQL : Administration (1Z0-883)
alphorm.com 92. Obtention des mtadonnesMoteurs de stockage
MySQLMySQL : Administration (1Z0-883) alphorm.com 93. Moteurs de
stockage MySQLPrsentationSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 94. Moteurs de stockage MySQL Caractristiques
MySQL Un moteur de stockage, cest quoi ? Spcifie la manire dont
seront stocks et utiliss les donnes Les plus utiliss: INNODB,
MYISAM et MEMORY Architecture pluggable storage engine Possibilit
dutiliser plusieurs moteurs dans une mme base de donnes Le choix du
moteur se fait lors de la cration de la table Le choix du moteur
est rversible (ALTER TABLE)MySQL : Administration (1Z0-883)
alphorm.com 95. Moteurs de stockage MySQL Le choix du moteur Dpend
de La manire de stocker les donnes La criticit des donnes La
gestion ou pas des transactions La stratgie de
sauvegarde/restauration Les types de verrous La persistance des
donnes La rplicationMySQL : Administration (1Z0-883) alphorm.com
96. Moteurs de stockage MySQL Les moteurs les plus connus INNODB
MYISAM MEMORY ARCHIVE CSV FEDERATED ...MySQL : Administration
(1Z0-883) alphorm.com 97. Moteurs de stockage MySQL Quelques
commandes utilesCommandes DescriptionSHOW ENGINES Affiche la liste
des moteurs disponiblesSELECT * FROM INFORMATION_SCHEMA.ENGINES;
Idem que SHOW ENGINESSHOW CREATE TABLE nom_table; Affiche des
informations sur la structure dune tableSHOW TABLE STATUS LIKE
'CATEGORIES' G Fournit des informations sur la structure dune
tableSELECT TABLE_SCHEMA,TABLE_NAME,TABLE_TYPE,ENGINEFROM
TABLESWHERE TABLE_SCHEMA=nom_base';Fournit des informations sur les
tables dune base dedonnes en utilisation la base
INFORMATION_SCHEMAMySQL : Administration (1Z0-883) alphorm.com 98.
Moteurs de stockage MySQLLe moteur INNODBMySQL : Administration
(1Z0-883) alphorm.com 99. Moteurs de stockage MySQLLe moteur
InnoDBSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 100. Le moteur InnoDB Caractristiques gnrales
du moteur InnoDB Moteur par dfaut Les donnes et les indexes sont
stocks dans des fichiers appels espace de table (tablespace) InnoDB
fournit MySQL un gestionnaire de table transactionnelle Conforme la
norme ACID (Atomique, Cohrent, Isol et Durable) Prise en compte de
COMMIT et ROLLBACK Capacits de restauration aprs crash InnoDB
utilise un verrouillage au niveau des lignes Fournit des lectures
cohrentes comme Oracle, sans verrous Supportent les contraintes de
cls trangres (FOREIGN KEY) et lintgrit rfrentielle Possibilit de
raliser des sauvegardes chaud (logique et physique)MySQL :
Administration (1Z0-883) alphorm.com 101. Le moteur InnoDB Gestion
du stockage du moteur InnoDB MySQL enregistre la structure de table
dans le fichier .frm (dans le rpertoire de base de donnes) Deux
types de stockage pour les donnes Un fichier par table avec
lextension .ibd (par defaut depuis la version 5.6.6)-
innodb_file_per_table = ON- Possibilit de stocker le fichier .ibd
dans un emplacement spcifique (depuis la version 5.6) CREATE TABLE
spcifications DATA DIRECTORY = chemin. CREATE INDEX nom_index ON
nom_table(nom_champ) INDEX DIRECTORY = chemin; Dans un un ou
plusieurs tablespaces (fichiers ibdata)- innodb_data_file_path =
ibdata1:12M:autoextend Contient le dictionnaire de donnes et les
undo logs pour lannulation des transactionsMySQL : Administration
(1Z0-883) alphorm.com 102. Le moteur InnoDB Architecture globale du
moteur Innodb Utilise deux journaux de transactions: ib_logfile0 et
ib_logfile1- Permet de maintenir la cohrene des donnes aprs un arrt
intempestif- Nombre de fichiers journaux dfini dans le paramtre
innodb_log_files_in_group- Possibilit de modifier la taille des
fichiers journaux innodb_log_file_sizeUtilise des undo logs pour
lannulation des transactions (rollback) - Stocks dans le fichier
spcifi par le paramtre innodb_data_file_path- Possibilit (depuis la
5.6) de sparer les undo logs dans un tablespace ddi
innodb_undo_directory : rprtoire pour le tablespace des undo logs
innodb_undo_logs : nombre de rollback segments du tablespace
innodb_undo_tablespaces : nombre de tablespace contenant des undo
logs MySQL : Administration (1Z0-883) alphorm.com 103. Le moteur
InnoDB Fonctionnement du moteur
InnodbMmoireinnodb_innodb_log_buffer_size
buffer_pool_sizeinnodb_flush_log_at_trx_commitcommitDisquesib_logfile0.ibdibdata1innodb_data_file_pathinnodb_log_files_in_groupinnodb_log_file_sizeCHECKPOINTSMySQL
: Administration (1Z0-883) alphorm.com 104. Le moteur InnoDBLe
moteur MyISAMMySQL : Administration (1Z0-883) alphorm.com 105.
Moteurs de stockage MySQLLe moteur MyISAMSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 106. Le moteur MyISAM Caractristiques gnrales
du moteur MyISAM Ses particularits sont : Rapidit en lecture
Recherche fulltexte Verrouillage au niveau des tables Pas de
sauvegarde chaud MyISAM utilise trois fichiers Un fichier pour la
structure de la table (.frm) par table: nom_table.frm Un fichier de
donnes (.MYD): nom_table.MYD Un fichier d'index (.MYI) par table:
nom_table.MYI Non transactionnel Ne supporte pas les cls
trangresMySQL : Administration (1Z0-883) alphorm.com 107. Le moteur
MyISAM Types de format pour les tables MyISAM Statique (par dfaut
sauf pour les types VARCHAR, VARBINARY, BLOB et TEXT) Rapide Moins
sensible aux crashs Dynamique Prend moins de place sur le disque
Moins rapide et plus sensible aux crashs tant donn les enttes
ncessaires Compress La table utilise trs peu d'espace En lecture
seule Les performances en lectures sont peu impactes Compression
avec myisampack et dcompression + mise jour des indexes avec
myisamchkMySQL : Administration (1Z0-883) alphorm.com 108. Le
moteur MyISAMLe moteur MEMORYMySQL : Administration (1Z0-883)
alphorm.com 109. Moteurs de stockage MySQLLe moteur MEMORYSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 110. Le moteur MEMORY Caractristiques gnrales
du moteur MEMORY Existe depuis la version 3.23.25 Moteur
non-transactionnel et non support des cls trangres Utilise des
index hachs au lieu du standard B-Tree Les indexes et les donnes
des tables sont stockes en mmoire uniquement (sauf la structure
.frm) Avantage : table extrmement rapides Inconvnient : un plantage
du serveur mne une perte des donnes Domaines d'application : Donnes
volatiles Tables temporaires Fort besoin en accs rapide aux donnes
;MySQL : Administration (1Z0-883) alphorm.com 111. Le moteur
MEMORYLes autres moteurs MYSQLMySQL : Administration (1Z0-883)
alphorm.com 112. Moteurs de stockage MySQLLe autres moteurs
MySQLSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 113. Les autres moteurs MySQL Le moteur
Archive Utilise un fichier .frm pour la structure et un fichier
.ARZ pour les donnes Compression des donnes lors du stockage Utilis
pour stocker des donnes brutes Moteur non-transactionnel et non
support des cls trangres Seules deux commandes sont possibles :
SELECT et INSERT Domaines d'application :- Enregistrement de
logsMySQL : Administration (1Z0-883) alphorm.com 114. Les autres
moteurs MySQL Le moteur CSV Stock les donnes au format CSV (Comma
Separated Values) La table est reprsente par- Un fichier
nom_table.CSV pour les donnes, un fichier nom_table.frm pour la
structure et un fichiernom_table.CSM pour ltat ltat et le nombre de
ligne Non transactionnel Pas de sauvegarde chaud Refus dindex
Verrou au niveau tableMySQL : Administration (1Z0-883) alphorm.com
115. Les autres moteurs MySQL Le moteur MERGE Offre la possibilit
de grouper des tables de structures identique pour enfaciliter la
manipulation Une table MERGE est identifiable par un fichier
dextension .frm qui est la structure de la table de dfinition et
unfichier dextension .MRG qui contient la liste des fichiers index
(.MYI) Toutes les tables utilises par la table MERGE doivent se
trouver dans lamme base de donnes que la table MERGEMySQL :
Administration (1Z0-883) alphorm.com 116. Les autres moteurs MySQL
Le moteur FEDERATED Permet de dporter les donnes sur un serveur
distant Seule une copie de la dfinition de la table est stocke sur
le serveur local Accde des tables dans une base de donnes distante,
plutt que dans des fichiers locaux Avantages Permet de rpartir la
charge Pointer sur plusieurs bases de donnes distantes si elles
acceptent les accs distants Supporte les indexesMySQL :
Administration (1Z0-883) alphorm.com 117. Les autres moteurs MySQL
Autres moteurs NDB Cluster XtraDBMySQL : Administration (1Z0-883)
alphorm.com 118. Les autres moteurs MySQL Rcapitulatif des
caractristiques pour les principaux moteursMoteurs Type de verrous
Gestion des transactions Stockage sur disque Sauvegarde chaudInnodb
LigneMyISAM TableMemory TableArchive LigneCSV TableFederated
TableNDB Cluster LigneXtraDB LigneMySQL : Administration (1Z0-883)
alphorm.com 119. Les autres moteurs MySQLTransactions et
verrousMySQL : Administration (1Z0-883) alphorm.com 120. Les
trasactions et verrousLe autres moteurs MySQLSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 121. Les autres moteurs MySQL Le moteur
Archive Utilise un fichier .frm pour la structure et un fichier
.ARZ pour les donnes Compression des donnes lors du stockage Utilis
pour stocker des donnes brutes Moteur non-transactionnel et non
support des cls trangres Seules deux commandes sont possibles :
SELECT et INSERT Domaines d'application :- Enregistrement de
logsMySQL : Administration (1Z0-883) alphorm.com 122. Les autres
moteurs MySQL Le moteur CSV Stock les donnes au format CSV (Comma
Separated Values) La table est reprsente par- Un fichier
nom_table.CSV pour les donnes, un fichier nom_table.frm pour la
structure et un fichiernom_table.CSM pour ltat ltat et le nombre de
ligne Non transactionnel Pas de sauvegarde chaud Refus dindex
Verrou au niveau tableMySQL : Administration (1Z0-883) alphorm.com
123. Les autres moteurs MySQL Le moteur FEDERATED Permet de dporter
les donnes sur un serveur distant Seule une copie de la dfinition
de la table est stocke sur le serveur local Accde des tables dans
une base de donnes distante, plutt que dans des fichiers locaux
Avantages Permet de rpartir la charge Pointer sur plusieurs bases
de donnes distantes si elles acceptent les accs distants Supporte
les indexesMySQL : Administration (1Z0-883) alphorm.com 124. Les
autres moteurs MySQL Autres moteurs NDB Cluster XtraDBMySQL :
Administration (1Z0-883) alphorm.com 125. Les autres moteurs MySQL
Rcapitulatif des caractristiques pour les principaux moteursMoteurs
Type de verrous Gestion des transactions Stockage sur disque
Sauvegarde chaudInnodb LigneMyISAM TableMemory TableArchive
LigneCSV TableFederated TableNDB Cluster LigneXtraDB LigneMySQL :
Administration (1Z0-883) alphorm.com 126. Les autres moteurs
MySQLTransactions et verrousMySQL : Administration (1Z0-883)
alphorm.com 127. Les transactions et verrousLes niveaux
disolationSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 128. Les niveaux disolation Les niveaux
disolation MySQL offre quatre niveaux disolation- REPEATABLE-READ
(par dfaut)- READ-COMMITTED- READ-UNCOMMITTED- SERIALIZABLE
Identique REPEATABLE-READ et toutes les lectures sont converties en
SELECT ... LOCKIN SHARE MODE Pour connatre le niveau disolation du
serveur MySQL- show global variables like %isolation%;- select
@@global.tx_isolation;MySQL : Administration (1Z0-883) alphorm.com
129. Les niveaux disolation Possibilit de modifier le niveau
disolation Au niveau instance- Dans le fichier my.cnf Paramtre
transaction-isolation = {READ-UNCOMMITTED | READ-COMMITTED|
REPEATABLE-READ | SERIALIZABLE}- Avec la commande SET GLOBAL Au
niveau session Avec la commande SET SESSION Syntaxe de la commande
SET SET [SESSION | GLOBAL] TRANSACTION ISOLATION LEVEL {READ
UNCOMMITTED | READ COMMITTED |REPEATABLE READ | SERIALIZABLE}MySQL
: Administration (1Z0-883) alphorm.com 130. Les niveaux
disolationLes verrousMySQL : Administration (1Z0-883) alphorm.com
131. Les transactions et verrousLes verrousSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 132. Les verrous Mthodes de verrouillage
Verrouillage au niveau table pour les moteurs (MyISAM, MEMORY)
Verrouillage au niveau ligne (InnoDB)- Mcanisme de MVCC
(MultiVersion Concurrency Control) Types de verrous Verrous en
lecture (partag) Verrous en criture (exclusif) Le processus de
verrouillage Si il n'y a pas de verrou sur la table, pose un verrou
en criture dessus. Sinon, soumet une requte de verrouillage dans la
queue de verrous d'critureMySQL : Administration (1Z0-883)
alphorm.com 133. Les verrous Verrou explicite La commande utiliser
est LOCK TABLES- READ pose un verrou partag ;- WRITE pose un verrou
exclusif ;- READ_LOCAL pose un verrou partag permettant les
insertions concurrentes pour les tables MyISAM.MySQL :
Administration (1Z0-883) alphorm.com 134. Les verrousLe
partitionnementMySQL : Administration (1Z0-883) alphorm.com 135. Le
partitionnementPrsentationSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 136. Le partitionnement Introduction Permet
de diviser une table physique en plusieurs partitions en fonction
des donnesquelle contient Pourquoi partitionner ? Pour grer la
monte en charge Pour grer de gros volumes de donnes Pour limiter
les accs aux niveau des IO Pour parallliser les oprations de
lecture et dcriture au niveau disque Effacer rapidement les donnes
(scaling back)MySQL : Administration (1Z0-883) alphorm.com 137. Le
partitionnement Les pr-requis pour utiliser le partitionnementmysql
SHOW PLUGINS Les contraintes lis au partitionnement Toutes les
partitions dune mme table doivent utiliser le mme moteur de
stockage Limiter 8192 partitions sous-partitions comprisesMySQL :
Administration (1Z0-883) alphorm.com 138. Le partitionnement Les
principaux types de partitionnement Le partitionnement de type
RANGE Le partitionnement de type LIST Le partitionnement de type
HASH Le partitionnement de type KEYMySQL : Administration (1Z0-883)
alphorm.com 139. Le partitionnementLe partitionnement par
RANGEMySQL : Administration (1Z0-883) alphorm.com 140. Le
partitionnementLe partitionnement detype RANGESite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 141. Le partitionnement de type RANGE Le
partitionnement de type RANGE Caractristiques- Permet de sparer
physiquements les donnes dune table par intervalles de valeurs
SyntaxeCREATE TABLE nom_table (champ1 type contrainte,...
)PARTITION BY RANGE (expression)PARTITION nom_partition VALUES LESS
THAN (valeur),..PARTITION nom_partition VALUES LESS THAN
MAXVALUE);MySQL : Administration (1Z0-883) alphorm.com 142. Le
partitionnement de type RANGE Le partitionnement de type RANGE
COLUMNS Caractristiques- A partir de MySQL 5.5- Permet deffectuer
le partitionnement dune table en fonction dune ou plusieurs
colonnes SyntaxeCREATE TABLE nom_table (champ1 type contrainte,...
)PARTITION BY RANGE (champ,champ)PARTITION nom_partition VALUES
LESS THAN (valeur,valeur),..PARTITION nom_partition VALUES LESS
THAN (MAXVALUE,MAXVALUE));MySQL : Administration (1Z0-883)
alphorm.com 143. Le partitionnement de type RANGELe partitionnement
de type LISTMySQL : Administration (1Z0-883) alphorm.com 144. Le
partitionnementLe partitionnement detype LISTSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 145. Le partitionnement de type LIST Le
partionnement de type LIST Caractristiques- Permet de dfinir une
liste de nombres entiers unique pour chaque partition- MySQL
dclenche une erreur lors dinsertion avec des valeurs non compris
dans la liste desvaleurs partitionnes SyntaxeCREATE TABLE nom_table
(champ1 type contrainte,... )PARTITION BY LIST
(expression)PARTITION nom_partition VALUES IN (NULL),PARTITION
nom_partition VALUES IN (valeur,valeur,...)..);MySQL :
Administration (1Z0-883) alphorm.com 146. Le partitionnement de
type LIST Le partionnement de type LIST COLUMNS Caractristiques-
Permet de sparer physiquement les donnes dune table en fonction
dune ou plusieurscolonnes (ENTIER, CHAR, VARCHAR, BINARY ou
VARBINARY)- Pas de possibilit davoir une expression comme critre de
partitionnement- La comparaison lors de laffectation des donnes se
fait sur lensemble des valeursMySQL : Administration (1Z0-883)
alphorm.com 147. Le partitionnement de type LISTLe partitionnement
de type HASHMySQL : Administration (1Z0-883) alphorm.com 148. Le
partitionnementLe partitionnement detype HASHSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 149. Le partitionnement de type HASH Le
partionnement de type HASH Caractristiques- Permet de distribuer
dune manire quitable les donnes dune table sur un nombre
departitions dfini SyntaxeCREATE TABLE nom_table (champ1 type
contrainte,... )PARTITION BY HASH (expression)PARTITIONS
nombre_partition;MySQL : Administration (1Z0-883) alphorm.com 150.
Le partitionnement de type HASHLe partitionnement de type KEYMySQL
: Administration (1Z0-883) alphorm.com 151. Le partitionnementLe
partitionnement detype KEYSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 152. Le partitionnement de type KEY Le
partionnement de type KEY Caractristiques- Presque identique au
type HASH Diffrences Cl de partitionnement vide support La cl de
partitionnement peut tre de type chine Les donnes ne sont pas
distribues de manire homogme sur toutesles partitionsMySQL :
Administration (1Z0-883) alphorm.com 153. Le partitionnement de
type KEY Le partionnement de type KEY SyntaxeCREATE TABLE nom_table
(champ1 type contrainte,... )PARTITION BY KEY
(liste_de_colonne)PARTITIONS nombre_partition;MySQL :
Administration (1Z0-883) alphorm.com 154. Le partitionnement de
type KEYLe sous partitionnementMySQL : Administration (1Z0-883)
alphorm.com 155. Le partitionnementLe sous-partitionnementSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 156. Le sous-partitionnement Caractristiques
Consiste partitionner une partition de type RANGE ou LIST Les
sous-partitions doivent tres de type HASH ou KEY SyntaxeCREATE
TABLE nom_table (champ1 type contrainte,... )PARTITION BY RANGE |
LIST (expression)SUBPARTITION BY HASH | KEY
(expression)SUBPARTITION nom_partition
(definition_des_partitions)MySQL : Administration (1Z0-883)
alphorm.com 157. Le sous-partitionnementGestion des
utilisateursMySQL : Administration (1Z0-883) alphorm.com 158.
Gestion des utilisateursLa gestion des comptesMySQLSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 159. La gestion des comptes MySQL Prsentation
Bas sur un systme de privilges simple et performant Chaque
utilisateur qui souhaite se connecter doit sauthentifier auprs
duserveur MySQL Aucun lien entre les utilisateurs MySQL et les
utilisateurs Linux ou Windows. Lidentification est une combinaison
de trois critres lhte (la machine) depuis lequel la connexion est
initie un nom dutilisateur un mot de passe.MySQL : Administration
(1Z0-883) alphorm.com 160. La gestion des comptes MySQL
Caractristiques Deux utilisateurs cres aprs linstallation root :
super utilisateur (sans mot de passe) Lutilisateur anonyme,
cest--dire tout utilisateur non connu du systme..MySQL :
Administration (1Z0-883) alphorm.com 161. La gestion des comptes
MySQL Systme dauthentification Les utilisateurs et les privilges
sont stocks la base de donnes mysql Les tables suivantes sont
utilises pour grer les privilges des utilisateurs user db host
tables_priv columns_priv procs_privMySQL : Administration (1Z0-883)
alphorm.com 162. La gestion des comptes MySQL Systme
dauthentification Accs au serveur Contrle de laccs en deux temps-
Vrification de lidentit de lutilisateur sa connexion (via lhte
deconnexion, le nom de lutilisateur et le mot de passe).-
Vrification de chacune des requtes envoyes au serveur pour sassurer
quelutilisateur a les privilges ncessaires.MySQL : Administration
(1Z0-883) alphorm.com 163. La gestion des comptes MySQL Systme
dauthentification Description des tapes de connexion Etape 1:-
MySQL utilise la table user pour vrifier quun utilisateur est
autoris seconnecter.- Les champs (Host, User et Password) sont
utiliss pour valider la connexion. Etape 2:- MySQL vrifie chaque
requte envoye afin de sassurer que lutilisateur a lesprivilges
ncessaires son excution.- Ces privilges sont vrifis partir des
tables user, db, table_priv etcolumns_privMySQL : Administration
(1Z0-883) alphorm.com 164. La gestion des comptes MySQL Systme
dauthentification Description des tapes de connexion Etape 1:-
MySQL utilise la table user pour vrifier quun utilisateur est
autoris seconnecter.- Les champs (Host, User et Password) sont
utiliss pour valider la connexion. Etape 2:- MySQL vrifie chaque
requte envoye afin de sassurer que lutilisateur a lesprivilges
ncessaires son excution.- Ces privilges sont vrifis partir des
tables user, db, tables_priv etcolumns_privMySQL : Administration
(1Z0-883) alphorm.com 165. La gestion des comptes MySQL Gestion des
comptes utilisateurs Cration dun compte utilisateur Syntaxe:CREATE
USER utilisateur@hte IDENTIFIED BY mot_de_passe; Modification du
mot de passe Syntaxe:SET PASSWORD FOR
utilisateur@hte=PASSWORD(mot_de_passe); Suppression dun compte
utilisateur Syntaxe:DROP USER utilisateur@hte;MySQL :
Administration (1Z0-883) alphorm.com 166. La gestion des comptes
MySQLGestion des privilges utilisateursMySQL : Administration
(1Z0-883) alphorm.com 167. Gestion des utilisateursLa gestion
privilgesSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 168. La gestion des privilges Les commandes
GRANT/REVOKE GRANT permet dattribuer des privilges Permet de crer
des utilisateurs Syntaxe gnraleGRANT privileges [ columns ], ...ON
item | [ * ] | [ *.* ]TO username [ IDENTIFIED BY password ][ WITH
GRANT OPTION ]MySQL : Administration (1Z0-883) alphorm.com 169. La
gestion des privilges Les commandes GRANT/REVOKE REVOKE permet de
retirer des privilges Ne permet pas de supprimer des utilisateurs
Syntaxe gnraleREVOKE privileges [columns] | ALL, ...ON item | [ * ]
| [ *.* ]FROM username;MySQL : Administration (1Z0-883) alphorm.com
170. La gestion des privilges La commande SHOW GRANTS Permet de
visualiser les droits des utilisateurs Syntaxe gnraleSHOW GRANTS
FOR username;MySQL : Administration (1Z0-883) alphorm.com 171. La
gestion des privilges Vrification des requtes MySQL vrifie chaque
requte envoye afin de sassurer que lutilisateur a lesprivilges
ncessaires son excution. Ces privilges sont vrifis partir des
tables user, db, table_priv etcolumns_priv Transcription du calcul
fait sur une requte Accs = privilges globaux OU privilges db OU
privilges de table OUprivilges de colonnes.MySQL : Administration
(1Z0-883) alphorm.com 172. La gestion des privilges Les privilges
globaux (instance) Stocks dans la table user de la base mysql
Liste- CREATE TEMPORARY TABLES, CREATE USER, FILE, GRANT OPTION,
LOCKTABLES, PROCESS, PROXY, RELOAD, REPLICATION CLIENT,
REPLICATIONSLAVE, SHOW SCHEMAS/DATABASES, SHUTDOWN et SUPERMySQL :
Administration (1Z0-883) alphorm.com 173. La gestion des privilges
Les privilges au niveau bases Stocks dans la table db de la base
mysql Liste- ALTER, CREATE, CREATE TEMPORARY TABLE, CREATE VIEW,
DROP, EVENT,GRANT OPTION, INDEX, INSERT, LOCK TABLES, SELECT, SHOW
VIEW etUPDATEMySQL : Administration (1Z0-883) alphorm.com 174. La
gestion des privilges Les privilges au niveau objets (tables) et
colonnes Stocks dans les tables tables_priv et columns_priv de la
base mysql Liste au niveau des tables- ALTER, CREATE, DELETE, DROP,
GRANT OPTION, INDEX, INSERT, SELECT,TRIGGER et UPDATE Liste au
niveau des colonnes- INSERT, SELECT et UPDATEMySQL : Administration
(1Z0-883) alphorm.com 175. La gestion des privilges Les privilges
au niveau procdures et fonctions stockes Stocks dans la table
procs_priv de la base mysql Liste- CREATE ROUTINE, ALTER ROUTINE,
EXECUTE et GRANT OPTIONMySQL : Administration (1Z0-883) alphorm.com
176. La gestion des privilgesGestion de la scuritMySQL :
Administration (1Z0-883) alphorm.com 177. Gestion de la scuritSite
: http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 178. Gestion de la scurit Les bonnes
pratiques Suppression des comptes anonymes Mot de passe et
privilges Audit des comptes avec le privilge FILE et PROCESSLIST
Cryptage des donnes sensibles ( PASSWORD(), ENCRYPT(),
ENCODE(),DECODE() ou MD5() ) Scuriser lchange avec SSH et SSLMySQL
: Administration (1Z0-883) alphorm.com 179. Gestion de la scurit
Les plug-ins Plug-ins dauthentification ( partir de MySQL 5.6)
mysql_native_password- par dfaut mysql_old_password- mthode de
hachage des versionsMySQL 4.1.1 sha256_password- Utilisation de
lalgorithme de hachage SHA-256- Paramtre authentication-plugin de
la section [ mysqld ]- Paramtrable lors de la cration de
lutilisateurMySQL : Administration (1Z0-883) alphorm.com 180.
Gestion de la scurit Les plug-ins Plug-ins de validation des mots
de passe validate_password- Permet de tester le degr de scurt dun
mot de passe Utilise 6 variables validate_password_policy_number
LOW ou 0, MEDIUM ou 1, STRONG ou 2 validate_password_length
validate_password_number_count validate_password_mixed_case_count
validate_password_special_char_countMySQL : Administration
(1Z0-883) alphorm.com 181. Gestion de la scurit Les plug-ins
Plug-ins de validation des mots de passe La fonction
VALIDATE_PASSWORD_STRENGTH()- Permet de renvoyer un code en
fonction du niveau de scurit du mot depasse 0 : taille4 25 : = 4 et
la valeur de validate_password_length 50 : si
validate_password_policy_number=LOW est respecte 75 : si
validate_password_policy_number=MEDIUM est respecte 100 : si
validate_password_policy_number=STRONG est respecteMySQL :
Administration (1Z0-883) alphorm.com 182. Gestion de la scurit
Expiration du mot de passe Possibilit de forcer le changement dun
mot de passe ALTER USER username PASSWORD EXPIRE;MySQL :
Administration (1Z0-883) alphorm.com 183. Gestion de la scurit
Utilitaire de configuration des mots de passe Outil
mysql_config_editor Nouveaut MySQL 5.6 Utilitaire en ligne de
commande Permet de stocker les informations dauthentification dans
un fichiercrypt nomm ~/.mylogin.cnf. Permet de se connecter MySQL
sans avoir connatre ou taper un motde passe MySQL Les commandes-
set, print, remove, resetMySQL : Administration (1Z0-883)
alphorm.com 184. Gestion de la scuritMaintenance des tablesMySQL :
Administration (1Z0-883) alphorm.com 185. Maintenance des
tablesSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 186. Maintenance des tables La maintenance du
serveur MySQL Dfragmentation des tables Mise jour des statistiques
Dtection des donnes corrompus Rparation des tables endommagsMySQL :
Administration (1Z0-883) alphorm.com 187. Maintenance des tables La
commande CHECK TABLE Vrifie la structure Vrifie le contenu des
tables Verrouillage des tables en lecture Moteurs supports- MyISAM-
InnoDB- Archive et CSVMySQL : Administration (1Z0-883) alphorm.com
188. Maintenance des tables La commande CHECK TABLE SyntaxeCHECK
TABLE table1 [, table2 ] [ option [option] ] Options- QUICK : ne
cherche pas les enregistrements orphelins.- FAST: Ne vrifie que les
tables dont la fermeture ne sest pas effectue proprement.- CHANGED:
Ne vrifie que les tables qui ont subi des modifications depuis la
dernirevrification- MEDIUM (dfaut): Vrifie les enregistrements et
calcule une cl dintgrit (checksum).- EXTENDED: Vrifie les
enregistrements et calcule une cl dintgrit pour
chaqueenregistrement.MySQL : Administration (1Z0-883) alphorm.com
189. Maintenance des tables La commande CHECK TABLE Retourne une
table avec quatre champs- Table- Op (toujours check)- Msg_type
(status=tat de la
table,error=messagederreur,info(information),warning=message
avertissement)- Msg_textMySQL : Administration (1Z0-883)
alphorm.com 190. Maintenance des tables La commande REPAIR TABLE
Corrige des tables en erreurs (CHECK TABLE) Moteurs supports-
MyISAM- Archive et CSV SyntaxeREPAIR TABLE table1 [, table2 ] [
NO_WRITE_TO_BINLOG ] [ QUICK ] [EXTENDED ] [ USE_FRM ]MySQL :
Administration (1Z0-883) alphorm.com 191. Maintenance des tables La
commande CHECKSUM TABLE Calcul la somme de contrle (checksum) dune
table (droit de select) Moteur support- InnoDB, CSV SyntaxeCHECKSUM
TABLE table1 [, table2 ] [ QUICK ] [ EXTENDED ]MySQL :
Administration (1Z0-883) alphorm.com 192. Maintenance des tables La
commande ANALYZE TABLE Analyse et enregistre les statistiques sur
une ou plusieurs tables Moteurs supports- MyISAM- InnoDB Verrou en
lecture pour les tables MyISAM SyntaxeANALYZE TABLE table1 [,
table2 ] [ NO_WRITE_TO_BINLOG ]MySQL : Administration (1Z0-883)
alphorm.com 193. Maintenance des tables La commande OPTIMISE TABLE
Permet de rduire la fragmentation Rcupre lespace inutilis Trie les
indexes Met jour les statistiques Moteurs supports- MyISAM
SyntaxeOPTIMISE [ NO_WRITE_TO_BINLOG ] TABLE table1 [, table2
]MySQL : Administration (1Z0-883) alphorm.com 194. Maintenance des
tables Utilitaire myisamchk quivalent [ CHECK | REPAIR | ANALYZE ]
TABLE Travail directement sur les fichiers MyISAM au niveau systme
Syntaxemyisamchk [ options ] table1 [ table2 ]MySQL :
Administration (1Z0-883) alphorm.com 195. Maintenance des tables
Utilitaire mysqlcheck quivalent [ CHECK | REPAIR | ANALYZE ] TABLE
Travail directement au niveau base ou table Syntaxemysqlcheck [
options ] | --all-databases | databases base1 [ base2 ]MySQL :
Administration (1Z0-883) alphorm.com 196. Maintenance des
tablesImport et export des donnes sousMySQLMySQL : Administration
(1Z0-883) alphorm.com 197. Import et export des donnesSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 198. Import et export des donnes Export des
donnes SELECT ... INTO OUTFILE Permet dexporter les donnes lues
dans un fichier texte sur le serveur Ncessite davoir le privilge
FILE Si le fichier existe dj lopration choue SyntaxeSELECT champ1,
... INTO OUTFILE fichier FIELDS TERMINATED BY sparateurOPTIONNALY
ENCLOSED BY dlimiteur LINES TERMINATED BY sparateurFROM table;MySQL
: Administration (1Z0-883) alphorm.com 199. Import et export des
donnes Chargement des donnes LOAD DATA INFILE SyntaxeLOAD DATA
[LOW_PRIORITY | CONCURRENT] [LOCAL]INFILE 'file_name.txt'[REPLACE |
IGNORE]INTO TABLE tbl_name [FIELDS[TERMINATED BY 't']
[[OPTIONALLY]ENCLOSED BY ''] [ESCAPED BY '' ] ] [LINES[STARTING BY
''] [TERMINATED BY 'n'] ][IGNORE number LINES][(col_name,...)]MySQL
: Administration (1Z0-883) alphorm.com 200. Import et export des
donnes mysqldump Outil de sauvegarde logique Syntaxemysqldump -u
username -p [ OPTIONS ] dbname [ tables ]mysqldump [ OPTIONS ]
--databases [ OPTIONS ] dbname1 [ dbname2, ... ]mysqldump [ OPTIONS
] --all-databases [ OPTIONS ]MySQL : Administration (1Z0-883)
alphorm.com 201. Import et export des donnes mysqldump Import dune
sauvegarde logique Syntaxemysql [ OPTIONS ] dbnamefichier.sqlmysql
[ OPTIONS ] dbname -e fichiersqlMySQL : Administration (1Z0-883)
alphorm.com 202. Maintenance des tablesProgrammation dans
MySQLMySQL : Administration (1Z0-883) alphorm.com 203.
Programmation sous MySQLLes procdures stockesSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 204. Les procdures stockes La notion de
routine Programmes stocks dans le moteur MySQL- Les procdures
stockes et les fonctions Fonctions- Centraliser le traitement des
requtes- Une meilleur gestion de la scurit- De meilleurs temps de
traitement- Faciliter le dveloppement et lvolution des
applicationsMySQL : Administration (1Z0-883) alphorm.com 205. Les
procdures stockes Langage de programmation dune procdure stocke
Langage LMD et LDD Dclaration des variables avec DECLARE et SET
Utilisation des oprateurs logiques et des fonctions SQL prdfinis
Utilisation des fonctions de contrle (IF, ELSE, LOOP, CASE ...)
Utilisation de curseurs pour le parcour et le traitement des
lignesMySQL : Administration (1Z0-883) alphorm.com 206. Les
procdures stockes Quest ce quune procdure stocke ? Programme
(routine) qui na pas de valeur de retour SyntaxeCREATE[ DEFINER = {
user | CURRENT_USER }]PROCEDURE nom_procedure ( [ parametre1
[,...]])[ caractristique ][ BEGIN ] corps_routine [ END ]MySQL :
Administration (1Z0-883) alphorm.com 207. Les procdures stockes Les
paramtres[ IN | OUT | INOUT ] param_name typetype : type MySQL
valide Les caractristiquesLANGUAGE SQL | [ NOT ] DETERMINISTIC | {
CONTAINSSQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }| SQL
SECURITY { DEFINER | INVOKER } | COMMENTstringMySQL :
Administration (1Z0-883) alphorm.com 208. Les procdures stockes
Commandes sur les procdures stocks Suppression- SyntaxeDROP
PROCEDURE IF EXISTE nom_procstock; Modification- SyntaxeALTER
PROCEDURE IF EXISTE nom_procstock;MySQL : Administration (1Z0-883)
alphorm.com 209. Les procdures stockesLes fonctionsMySQL :
Administration (1Z0-883) alphorm.com 210. Programmation sous
MySQLLes fonctionsSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 211. Les fonctions Quest ce quune fonction ?
Programme (routine) qui renvoi un rsultat SyntaxeCREATE[ DEFINER =
{ user | CURRENT_USER }]FUNCTION nom_fonction ( [ parametre1
[,...]])[ RETURNS type ][ caractristique ][ BEGIN ] corps_routine [
END ]MySQL : Administration (1Z0-883) alphorm.com 212. Les
fonctions Les caractristiquesLANGUAGE SQL | [ NOT ] DETERMINISTIC |
{ CONTAINSSQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }| SQL
SECURITY { DEFINER | INVOKER } | COMMENTstringMySQL :
Administration (1Z0-883) alphorm.com 213. Les fonctions Commandes
sur les procdures stocks Suppression- SyntaxeDROP FUNCTION IF
EXISTE nom_fonction; Modification- SyntaxeALTER FUNCTION IF EXISTE
nom_fonction;MySQL : Administration (1Z0-883) alphorm.com 214. Les
fonctionsLes triggersMySQL : Administration (1Z0-883) alphorm.com
215. Programmation sous MySQLLes triggersSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 216. Les triggers Quest ce quun trigger
(dclencheur) ? Associ une table Sactive lorsquun vnement
particulier survient- BEFORE (avant) ou AFTER (aprs), INSERT,
UPDATE, DELETEMySQL : Administration (1Z0-883) alphorm.com 217. Les
triggers Cas dutilisation Log des utilisateurs/changements Excuter
des rgles mtier Renforcer les contraintes dintgrit Dupliquer des
donnes Amliorer les performances et les changementsMySQL :
Administration (1Z0-883) alphorm.com 218. Les triggers Cration dun
trigger SyntaxeCREATE TRIGGER dclencheurBEFORE | AFTERINSERT |
DELETE | UPDATE ON nom_tableFOR EACH ROW[condition]actionMySQL :
Administration (1Z0-883) alphorm.com 219. Les triggers Informations
sur les triggers VueINFORMATION_SCHEMA.TRIGGERS Suppression dun
triggerSyntaxe DROP TRIGGER dclencheur;MySQL : Administration
(1Z0-883) alphorm.com 220. Les triggersLe planificateur
dvnementsMySQL : Administration (1Z0-883) alphorm.com 221.
Programmation sous MySQLLe planificateurdvnementsSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 222. Le planificateur dvnements Quest ce que
le planificateur dvnements Permet dautomatiser des tches-
Intervalles rguliers- Heure fixe Tourne sous forme de processus
lger (thread) Ncessite le privilge EVENT ActivationSHOW GLOBAL
VARIABLES LIKE 'event_scheduler';SET GLOBAL event_scheduler =
1;MySQL : Administration (1Z0-883) alphorm.com 223. Le
planificateur dvnements Cration dun vnement SyntaxeCREATE[DEFINER =
{ user | CURRENT_USER }]EVENT [IF NOT EXISTS] nom_vnementON
SCHEDULE moment[ON COMPLETION [NOT] PRESERVE][ENABLE | DISABLE |
DISABLE ON SLAVE][COMMENT commentaire]DOcorps_evenement;MySQL :
Administration (1Z0-883) alphorm.com 224. Le planificateur
dvnements Cration dun vnement Syntaxemoment:AT timestamp [+
INTERVAL intervalle] ...| EVERY interval[STARTS timestamp [+
INTERVAL intervalle] ...][ENDS timestamp [+ INTERVAL intervalle]
...]MySQL : Administration (1Z0-883) alphorm.com 225. Le
planificateur dvnements Modification dun vnement SyntaxeALTER EVENT
nom_vnement ... Suppression dun vnement SyntaxeDROP EVENT [IF
EXISTS] nom_vnement; Les mtadonnesinformation_schema.eventsMySQL :
Administration (1Z0-883) alphorm.com 226. Le planificateur
dvnementSauvegarde et restauration sousMySQLMySQL : Administration
(1Z0-883) alphorm.com 227. Sauvegarde et
restaurationIntroductionSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 228. Sauvegarde et restauration Les questions
se poser Que sauvegarder A quel frquence La tolrence de perte des
donnes La dure de rtention des sauvegardes Les bonnes pratiques
Sauvegarder le fichier de configuration de MySQL Activer les
journaux binaires (log-bin) Tester les sauvegardesMySQL :
Administration (1Z0-883) alphorm.com 229. Sauvegarde et
restaurationLes sauvegardes logiquesMySQL : Administration
(1Z0-883) alphorm.com 230. Sauvegarde et restaurationLes
sauvegardes logiquesSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 231. Les sauvegardes logiques Les outils de
sauvegarde SELECT ... INTO OUTFILE mysqldump Sauvegarde cohrente
avec mysqldumpOptionsMoteur MYSIAM --opt (intgre loption
--lock-tables) --lock-all-tables (pour les exports multibases)
Moteur InnoDB --single-transactionMySQL : Administration (1Z0-883)
alphorm.com 232. Les sauvegardes logiquesLes sauvegardes
physiquesMySQL : Administration (1Z0-883) alphorm.com 233.
Sauvegarde et restaurationLes sauvegardesphysiquesSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 234. Les sauvegardes physiques
Caractristiques Copie physique de tous les fichiers (datadir) au
niveau OS Peut-tre ralise base ouverte ou fermeMySQL :
Administration (1Z0-883) alphorm.com 235. Les sauvegardes physiques
Sauvegarde fichiers MyISAM Les fichiers sauvegarder: .frm, .MYD et
.MYI Base ouverte Ncessite un verrou au niveau table: LOCK TABLE
nom READ; Possibilit de verrouiller toutes les tables LOCK TABLES
table1 READ, table2 READ, ...; Possibilit de verrouiller toutes les
tables de linstance FLUSH TABLES WITH READ LOCK; Ncessit denlever
le verrou aprs la sauvegarde: UNLOCK TABLES;MySQL : Administration
(1Z0-883) alphorm.com 236. Les sauvegardes physiques Sauvegarde
MyISAM Les tapes Pose dun verrou sur les tables sauvegarder LOCK
TABLE Forcer la synchronisation entre le cache MySQL et les
fichiers FLUSH TABLE Copie des fichiers .frm, .MYD et .MYI (tar,
cp, gzip, cpio, ...) Dvrouillage des tables UNLOCK TABLES;MySQL :
Administration (1Z0-883) alphorm.com 237. Les sauvegardes physiques
Sauvegarde fichiers InnoDB Les fichiers sauvegarder
innodb_data_file_path: .frm, ibdatanumro innodb_file_per_table:
.frm, nom_table.ibd Base ouverte Ncessite un verrou au niveau
table: LOCK TABLE nom READ; Possibilit de verrouiller toutes les
tables LOCK TABLES table1 READ, table2 READ, ...; Possibilit de
verrouiller toutes les tables de linstance FLUSH TABLES WITH READ
LOCK; Ncessit denlever le verrou aprs la sauvegarde: UNLOCK
TABLES;MySQL : Administration (1Z0-883) alphorm.com 238. Les
sauvegardes physiques Sauvegarde fichiers InnoDB Les tapes Poser un
verrou global en lecture sur lensemble des tables FLUSH TABLES WITH
READ LOCK Sauvegarde de tous les fichiers au niveau de lOS (cp,
tar, gzip, cpio, ...) Dvrouillage des tables UNLOCK TABLESMySQL :
Administration (1Z0-883) alphorm.com 239. Les sauvegardes
physiquesLa restaurationMySQL : Administration (1Z0-883)
alphorm.com 240. Sauvegarde et restaurationLa restaurationSite :
http://www.alphorm.comBlog : http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 241. La restauration Dpend du type de
sauvegarde Restauration partir dune sauvegarde froid Restauration
partir dun export Type de restauration Restauration FULL, base,
table Restauration PITR- Ncessite lutilisation des journaux
binaire- Utilisation de loutil mysqlbinlogMySQL : Administration
(1Z0-883) alphorm.com 242. La restaurationLa rplicationMySQL :
Administration (1Z0-883) alphorm.com 243. La
rplicationIntroductionSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 244. Introduction Quest-ce que la rplication
? Permet de diposer de plusieurs serveurs avec les mmes donnes
Utilise les logs binairesMySQL : Administration (1Z0-883)
alphorm.com 245. Introduction Pourquoi utiliser la rplication Monte
en charge Rpartition de la charge Haute disponibilit
SauvegardeMySQL : Administration (1Z0-883) alphorm.com 246.
Introduction Fonctionnement de la rplicationMAITREESCLAVECopie
lestransactions dumaitre dans les relaylogBinlogsIO_THREADIO_THREAD
(relay log)SQL_THREADESCLAVEApplique lestransactions desrelay log
dans MySQLTransfert du contenudes logs binaire versles
esclavesIO_THREAD (relay log)SQL_THREADMySQL : Administration
(1Z0-883) alphorm.com 247. Introduction Les diffrentes topologies
Matre/Esclave Matre/Matre- Actif - Actif- Actif - Passif Les modes
de rplication SBR (Statement Based Replication: antrieure MySQL
5.1) RBR (Row Based Replication: partir de MySQL 5.1) La rplication
semi-sychrone (depuis la version 5.5)- Ncessite lactivation sur le
matre et les esclavesMySQL : Administration (1Z0-883) alphorm.com
248. IntroductionMise en oeuvre de la rplicationMySQL :
Administration (1Z0-883) alphorm.com 249. Sauvegarde et
restaurationLa restaurationSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 250. La restauration Dpend du type de
sauvegarde Restauration partir dune sauvegarde froid Restauration
partir dun export Type de restauration Restauration FULL
Restauration PITR- Ncessite lutilisation des journaux binaireMySQL
: Administration (1Z0-883) alphorm.com 251. La restaurationLa
rplicationMySQL : Administration (1Z0-883) alphorm.com 252. La
rplicationSWITCHOVERSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 253. SWITCHOVER Les principales variables de
configuration server-id log-bin binlog-do-db,
binlog-do-table,binlog-ignore-db,binlog-ignore-table
replicate-do-db, replicate-ignore-db, replicate-do-table,
replicate-ignore-table expire_log_days sync_binlog ...MySQL :
Administration (1Z0-883) alphorm.com 254. SWITCHOVER Les commandes
SQL SHOW MASTER STATUS SHOW SLAVE STATUS START | STOP SLAVE
{IO_THREAD | SQL_THREAD } SHOW BINARY LOGS PURGE BINARY LOG options
RESET MASTER RESET SLAVE CHANGE MASTER TOMySQL : Administration
(1Z0-883) alphorm.com 255. SWITCHOVER Rappel de la configuration du
LABMAITRE: 192.168.1.200ESCLAVE: 192.168.1.202Copie lestransactions
dumaitre dans les relaylogbinlogsIO_THREADIO_THREAD (relay
log)SQL_THREAD Applique lestransactions desrelay log dans
MySQLTransfert du contenudes logs binaire versles esclavesMySQL :
Administration (1Z0-883) alphorm.com 256. SWITCHOVER Les tapes
Arrter les critures sur le nouveau matre et activer les log
binaires Relever la position des journaux binaires sur le futur
matre (SHOWMASTER STATUS) Configurer la rplication sur lancien
matre (CHANGE MASTER TO) Dmarrer la rplication sur lancien matre
(START SLAVE) Arrter la rplication sur le nouveau matre (STOP
SLAVE)MySQL : Administration (1Z0-883) alphorm.com 257.
SWITCHOVERIntroduction loptimisation desperformancesMySQL :
Administration (1Z0-883) alphorm.com 258. Introduction
loptimisation desperformancesSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 259. Introduction loptimisation des
performances Les lments de performances Matriel- CPU, Mmoire,
Disque (type, RAID 0-1-5-10) Logiciel- Caches MySQL, paramtres
MySQL, OS, mthode de synchronisation Applicatif- Schma de donnes,
indexes, plan dxcutionMySQL : Administration (1Z0-883) alphorm.com
260. Introduction loptimisation des performances Elments logiciel
Le cache de requte- query_cache_type (active ou pas le cache de
requte) 0 = pas de cache1 = met en cache toutes les requetes sauf
celles qui ont le flag SELECT SQL_NO_CACHE2 = met en cache
seulement les requetes qui comportent le flag SELECT SQL_CACHE-
query_cache_size (taille du cache de requte)- RESET QUERY CACHE
(rinitialise le cache de requte)- query_cache_limit (taille
maximale des donnes mis en cache)- ... Le cache de table-
table_open_tables- open_table_definitionsMySQL : Administration
(1Z0-883) alphorm.com 261. Introduction loptimisation des
performances Elments logiciel MyISAM- key_buffer_size (taille du
cache dindex) InnoDB- innodb_buffer_size (taille du cache mmoire)-
Innodb_log_buffer_size (taille du tampon de log) Paramtre par
client- sort_buffer_size (taille du tampon de tri)MySQL :
Administration (1Z0-883) alphorm.com 262. Introduction
loptimisation des performances Elment applicatif Les indexes- Quand
crer un index ? Sur un champ utiliser dans une clause WHERE, ORDER
BY ou GROUP BY Sur des tables assez volumineuses Sur les cls
trangres Un index implicite est crer lors de la cration dun PRIMARY
KEYMySQL : Administration (1Z0-883) alphorm.com 263. Introduction
loptimisation des performances Elment applicatif Les indexes- Les
types dindex Index uniques Cl primaire Index sur plusieurs colonnes
Index sur un prfixe de colonne ...MySQL : Administration (1Z0-883)
alphorm.com 264. Introduction loptimisation des performances Elment
applicatif La commande EXPLAIN- Permet dafficher le plan dxecution
dune requteMySQL : Administration (1Z0-883) alphorm.com 265.
Introduction loptimisation des performancesConclusionMySQL :
Administration (1Z0-883) alphorm.com 266. ConclusionLe mot de la
finSite : http://www.alphorm.comBlog :
http://www.alphorm.com/blogForum :
http://www.alphorm.com/forumNoureddine DRISSIExpert consultant
bases de donnesContact : [email protected] : Administration
(1Z0-883) alphorm.com 267. Conlusion Rappel des objectifs de la
formation: Comprendre et dcrire larchitecture de MySQL Installer et
mettre jour MySQL Administrer et configurer MySQL Utiliser les
outils MySQL tel que MySQL WorkBench Comprendre et mettre en oeuvre
les diffrents moteurs de stockage (InnoDB, MyISAM,MEMORY, CSV...)
Comprendre et grer la scurit sous MySQL Comprendre et mettre en
oeuvre la rplication sous MySQL Comprendre et dcrire les techniques
doptimisation de MYSQL Raliser les oprations de sauvegarde et
restaurationMySQL : Administration (1Z0-883) alphorm.com 268.
Conlusion A venir: MySQL TuningMySQL : Administration (1Z0-883)
alphorm.com 269. ConclusionFINMerci pour votre attentionMySQL :
Administration (1Z0-883) alphorm.com