Date de publication: le mardi 3 juillet 2007 Ă 10h29
Dernière modification: par Pascal BOYER le samedi 21 juillet 2007 à 12h41
« Article précédent: JRE / J2RE : installer Java Runtime Environment
» Article suivant: nvidia : compiler et installer le driver vvidia
Mysql : documentation / manuel
Sur le site officiel de MySQL propose une documentation très complète, en plusieurs langues et dans différents formats, des différents produits: serveur, interface graphique d'administration, etc...: documentation en ligne .
MySQL : installer le serveur
Voici la liste des packages à installer pour la mise en oeuvre d'un serveur de bases de données MySQL dans sa version 5.0.32 sous Debian etch (debian stable numéro 4 sortie le 8 avril 2007).
Liste minimale des packages Ă installer:
- libdbd-mysql-perl
- libmysqlclient15off
- mysql-client-5.0
- mysql-server-5.0
- psmisc
- mysql-common
La commande suivante:
apt-get install mysql-server-5.0
Lecture des listes de paquets... Fait Construction de l'arbre des dépendances... Fait Les paquets supplémentaires suivants seront installés : libdbd-mysql-perl libmysqlclient15off mysql-client-5.0 mysql-common Paquets suggérés : tinyca Les NOUVEAUX paquets suivants seront installés : libdbd-mysql-perl libmysqlclient15off mysql-client-5.0 mysql-common mysql-server-5.0 0 mis à jour, 5 nouvellement installés, 0 à enlever et 0 non mis à jour. Il est nécessaire de prendre 0o/34,4Mo dans les archives. Après dépaquetage, 89,6Mo d'espace disque supplémentaires seront utilisés. Souhaitez-vous continuer [O/n] ?
...est suffisante pour installer tous les packages de la liste ci-dessus.
A la fin de l'installation on contrôle ce qui est installé:
dpkg -l |grep mysql
ii libdbd-mysql-perl 3.0008-1 A Perl5 database interface to the MySQL data ii libmysqlclient15off 5.0.32-7etch1 mysql database client library ii mysql-client-5.0 5.0.32-7etch1 mysql database client binaries ii mysql-common 5.0.32-7etch1 mysql database common files (e.g. /etc/mysql ii mysql-server-5.0 5.0.32-7etch1 mysql database server binaries
Vous pouvez également contrôler que le serveur MySQL tourne sur votre système:
ps aux |grep mysql
root 6079 0.0 0.1 3660 1292 pts/0 S 17:15 0:00 /bin/sh /usr/bin/mysqld_safe
mysql 6116 0.0 1.7 118480 17840 pts/0 Sl 17:15 0:00 /usr/sbin/mysqld --basedir=/usr
--datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking
--port=3306 --socket=/var/run/mysqld/mysqld.sock
root 6117 0.0 0.0 2744 568 pts/0 S 17:15 0:00 logger -p daemon.err -t mysqld_safe -i -t mysqld Autre possibilité:
/etc/init.d/mysql status
/usr/bin/mysqladmin Ver 8.41 Distrib 5.0.32, for pc-linux-gnu on i486 Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL license Server version 5.0.32-Debian_7etch1-log Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/run/mysqld/mysqld.sock Uptime: 4 sec Threads: 1 Questions: 133 Slow queries: 0 Opens: 135 Flush tables: 1 Open tables: 17 Queries per second avg: 33.250.
MySQL : lancer/arrĂŞter le serveur
/etc/rc2.d/
...le lien symbolique suivant:
ls -la /etc/rc2.d/*mysql
lrwxrwxrwx 1 root root 15 2007-07-03 17:15 /etc/rc2.d/S19mysql -> ../init.d/mysql
...pouvant prendre en argument les options suivantes:
start|stop|restart|reload|force-reload|status
Le serveur MySQL est donc automatiquement démarré avec le système.
Pour arrĂŞter le serveur vous utiliserez l'une de ces deux commandes:
/etc/rc2.d/S19mysql stop
Stopping MySQL database server: mysqld.
ou
/etc/init.d/mysql stop
Stopping MySQL database server: mysqld.
Le redémarrage du serveur pourra se faire indépendamment avec l'une ou l'autre de ces deux commandes:
/etc/rc2.d/S19mysql start
Starting MySQL database server: mysqld. Checking for corrupt, not cleanly closed and upgrade needing tables..
ou
/etc/init.d/mysql start
Starting MySQL database server: mysqld. Checking for corrupt, not cleanly closed and upgrade needing tables..
MySQL : PHP
L'installation conjointe à MySQL de PHP est très fréquente et ne pose pas de problème particulier. L'installation des packages suivants devrait vous permettre de faire fonctionner à peu près tous les logiciels écrits en PHP et reposant sur l'exploitation d'une base de données mysql:
dpkg -l '*php*' |grep ^ii
ii libapache-mod-php4 4.4.4-8+etch1 server-side, HTML-embedded scripting language (apache 1.3 module) ii php-auth 1.2.4-0.1 PHP PEAR modules for creating an authentication system ii php-db 1.7.6-2 PHP PEAR Database Abstraction Layer ii php-http 1.3.6-2 PHP PEAR module for HTTP related stuff ii php-mail 1.1.6-2 PHP PEAR module for sending email ii php-net-smtp 1.2.6-2 PHP PEAR module implementing SMTP protocol ii php-net-socket 1.0.6-2 PHP PEAR Network Socket Interface module ii php-xml-parser 1.2.6-2 PHP PEAR module for parsing XML ii php4 4.4.4-8+etch1 server-side, HTML-embedded scripting language (meta-package) ii php4-cli 4.4.4-8+etch1 command-line interpreter for the php4 scripting language ii php4-common 4.4.4-8+etch1 Common files for packages built from the php4 source ii php4-gd 4.4.4-8+etch1 GD module for php4 ii php4-imagick 0.9.11+1-4.1 ImageMagick module for php4 ii php4-imap 4.4.4-8+etch1 IMAP module for php4 ii php4-mcal 4.4.4-8+etch1 MCAL calendar module for php4 ii php4-mcrypt 4.4.4-8+etch1 MCrypt module for php4 ii php4-mhash 4.4.4-8+etch1 MHASH module for php4 ii php4-mysql 4.4.4-8+etch1 MySQL module for php4 ii php4-pear 4.4.4-8+etch1 PHP Extension and Application Repository (transitional package) ii php4-xslt 4.4.4-8+etch1 XSLT module for php4 ii php5-common 5.2.0-8+etch1 Common files for packages built from the php5 source
MySQL : définir le mot de passe root
L'installation du serveur MySQL à partir des packages debian créé par défaut deux bases de données, dont l'une, nommée mysql, qui contient les tables de droits.
Sous Debian, la procédure d'installation crée:
- 2 utilisateurs root
:
- l'un lié à l'hôte localhost
- l'autre Ă l'hĂ´te portant le nom de la machine
- 1 utilisateur debian-sys-maint de maintenance du système
Fig. 1: Droits des utilisateurs créés par défaut (affichés avec phpMyAdmin)
Pour créer un mot de passe à chacun des deux utilisateur root, vous pouvez soit utiliser l'interface de l'outil d'administration phpMyAdmin soit utiliser les commandes SQL.
Comme il n'existe pas encore de mot de passe, il est très simple de se loguer au serveur MySQL:
msql
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 18 Server version: 5.0.32-Debian_7etch1-log Debian etch distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>
Affichez ensuite la liste des utilisateurs existants:
mysql> SELECT Host, User FROM mysql.user;
+------------+------------------+ | Host | User | +------------+------------------+ | democratie | root | | localhost | debian-sys-maint | | localhost | root | +------------+------------------+ 3 rows in set (0.00 sec)
...puis définissez un mot de passe pour le premier utilisateur root:
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('nouveau_mot_de_passe');
Query OK, 0 rows affected (0.00 sec)
Une fois le nouveau mot de passe défini, il est fort probable que votre connexion au serveur MySQL soit interrompue:
mysql> Aborted
A présent, pour définir le mot de passe du second utilisateur root, vous devez vous reconnecter, mais cette fois-ci, en vous identifiant:
mysql -u root -p
Enter password: <Saisir ici le mot de passe de root> Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 36 Server version: 5.0.32-Debian_7etch1-log Debian etch distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>
Employez la même commande que précédemment mais en modifiant le nom d'hôte:
mysql> SET PASSWORD FOR 'root'@'democratie' = PASSWORD('nouveau_mot_de_passe');
Query OK, 0 rows affected (0.00 sec)
Pour quitter la coonexion au serveur MySQL:
mysql> QUIT;
Bye
Voici ce qu'affiche maintenant phpMyAdmin:
Fig. 2: phpMyAdmin indique clairement que les deux utilisateurs root ont effectivement un mot de passe
Commentaires













