Architecture, Installation et configuration de MySQL
Architecture Client / Serveur (MySQL)
MySQL est un SGBD Client/Serveur contrairement à Access qui est un SGBD Fichier
Les clients du serveur MySQL se trouvent sur la machine hôte dans le répertoire /bin.
| Exécutable Serveur | Description |
| mysqld | Version standard du serveur |
| mysqld-debug | Version de debuggage du serveur |
| mysqld-max | Version en cours de développement (MySQL5.0) |
| mysqld-nt | Version optimisé du serveur pour Windows NT |
| mysqld | Version standard du serveur |
| mysqld-max-nt | Version en cours de développement (MySQL5.0) optimisé pour Win NT |
Les logiciels clients se regroupent en deux catégories :
| Exécutable Client en ligne de commande | Description |
| mysqlshow | Client permettant de lister les BDD |
| mysqldump | Client permettant d’exporter un groupe de bases vers un fichier texte |
| mysqlimport | Client permettant d’importer un fichier contenant les instructions SQL |
| mysql | Client permettant d’accéder au SGBD |
| Exécutable Client Graphique (GUI Tools) | Description |
| mysql administrator | Client permettant d’administrer le SGBD |
| mysql query browser | Client permettant d’administrer le SGBD |
| mysql work bench | Client permettant d’administrer le SGBD |
Les utilitaires :
| Exécutable Utilitaire | Description |
| myisamchk | Permet de vérifier et réparer les tables MyISAM. |
| myisampack | Permet de compresser les tables MyISAM. |
| perror | Permet de visualiser une erreur renvoyée par MySQL |
Les connecteurs :
| Les connecteurs | Description |
| connector_odbc | Driver supporté par Windows, UNIX et MacOS (bibliothèque C) |
| connector_j | Driver dédié aux plates formes JAVA |
| connectornet | Driver pour la plate-forme .NET (entièrement écrit en C#) |
| connectormxj | Driver qui permet de lier les applications java et mysqlserver |
| connectorphp | Driver qui est dédié au langage PHP (uniquement sous windows) |
Un client est un programme qui se connecte au serveur par login/mot de passe et nom de l’hôte
Un utilitaire manipule directement les fichiers de BDD ou autre sans passer par une quelconque connexion au serveur.
Les bibliothèques et les connecteurs permettent de créer ou de se connecter à un serveur MySQL.
La plupart des composants MySQL sont disponible sur les plate-formes Windows, UNIX, MacOS etc.
En MySQL, il est possible de se connecter sous n’importe quelle plateforme.
Comment se connecte un client au serveur?
Un client se connecte au serveur via une adresse IP, un port ,un identifiant de connexion et des options.
Les options ont deux syntaxes :
forme courte : -(1 lettre) en général première lettre de l’option
forme longue : –option
Il existe trois catégories d’options
| Catégorie | Exemple | Description |
| bool | mysql –option=1 mysql –option mysql -enable-option |
Options acceptant les valeurs booléennes : ses trois valeurs permettent d’activer l’option |
| string | mysql –option=aerty mysql –option= »azerty » |
Options acceptant les valeurs textuelles : ses deux commandes permettent d’assigner une valeur à l’option |
| forme courte | mysql -o azerty |
Options acceptant les formes courtes : ATTENTION, l’espace à droite de l’option est facultatif |
Comment lancer le serveur?
//sous Windows >mysql-nt
Les options du serveur MySQL :
Les options du serveur sont de type réseau :
- mysql-nt -enabled-shared-memory
- mysql-nt -enabled-named-pipe
- mysql-nt-max -enabled-named-pipe
Une fois le serveur lancé, on pourra lancer le client mysql
Comment stopper le serveur?
>mysqladmin identification >shutdown [--protocol=pipe]
Comment se connecter?
Pour se connecter au serveur, on exécutera en ligne de commande le client mysql
Option/identification :
| Option longue | Option courte | Exemple | Description |
| –host | -h | -h localhost | Se connectera au domaine assigné |
| –port | -P | -P 3306 | Se connectera au port assigné |
| –user | -u | -u root | Nom d’utilisateur |
| –password | -p | -p1234 | Mot de passe. ATTENTION il n’y a pas d’espace entre l’option et le mot de passe |
| –protocol | pas de forme courte | –protocol tcp | tcp|socket|memory|pipe |
| –socket | pas de forme courte | –socket secureip | Nom du canal utilisé / socket UNIX |
L’option –protocol :
| Protocol | Local | Distant | Windows | UNIX | Activé par défaut |
| TCP/IP | X | X | X | X | X |
| Socket | X | X | X | ||
| Named Pipe | X | X | |||
| Shared Memory | X | X |
Microsoft privilégie les connexion PIPE alors que MySQL le désactive et n’autorise que les connexion TCP/IP par défaut
UNIX recommande l’uilisation de socket en local et MySQL de même.
Concernant Shared Memory, c’est un systeme tres intéressant pour les systemes 9x.
Quelque soit le protocole, MySQL n’est pas accessible de l’exterieur.
Configuration de MySQL
Le fichier de configuration du serveur mysql se nomme my.ini et se trouve dans le repertoire du serveur
Apres l’appel de [mysqld], il faudra ajouter enabled-shared-memory, enabled-named-pipe si on à besoin de ses protocoles
[mysqld] enabled-shared-memory #active le protocole memory enabled-named-pipe #active le protocole named pipe skip-networking #désactive le tcp/ip # The TCP/IP Port the MySQL Server will listen on port=3306
Apres toute modfication du my.ini, il est nécéssaire de redémarrer le serveur
Une fois connecté avec le client, on pourra utiliser la commande STATUS pour visualiser le protocole de connexion.
Si on ne reseigne pas de protocole à la connexion, mysql réagira comme suit :
| UNIX | Windows |
| -h localhost : socket | -h . : named pipe |
| sans host ni protocole : socket | sans host ni protocole : shared memory |
Les fichiers de configurations se trouvent :
| UNIX | Windows |
| /etc/my.cnf | C:WINDOWSmy.ini |
On peut configurer dans le fichier de configuration des elements tels que user, host et port dans la section [client]. On peut aussi configurer les repertoire des executables et des données
#Path to installation directory. All paths are usually resolved relative to this. basedir="D:/Program Files/MySQL/MySQL Server 5.0/" #Path to the database root datadir="D:/Program Files/MySQL/MySQL Server 5.0/Data/"
MySQL autorise l’installation/desinstallation de services :
>mysql --install nomservice >mysql --remove nomservice
Pour spécifier un fichier de configuration :
>mysql -u ... - p... -p ... --default-file="chemin/my.ini"

Commentaires récents