2.4.2 Procédures de post-installation sous Unix
2.4 Procédure de post-installation
2 Installer MySQL
Manuel de Référence MySQL 4.1 : Version Française
. Problèmes d'exécution de mysql_install_db ->Lancer et arrêter MySQL automatiquement . Problèmes de démarrage du serveur MySQL
|
2.4.2.2 Lancer et arrêter MySQL automatiquement
Généralement, vous démarrez le serveur
mysqld
par l'un de ces moyens :
-
En appelant
mysqld
directement. Cela fonctionne
sur toutes les plates-formes.
-
En lançant le serveur MySQL comme un service Windows.
Cela fonctionne sur les versions de Windows qui supportent les
services : comme Windows NT, 2000 et XP. Le service peut être configuré
pour démarrer automatiquement au lancement de Windows, ou manuellement,
à la demande.
Pour des instructions, reportez vous à Lancer MySQL comme un service Windows .
-
En appelant
mysqld_safe
, qui essaie de déterminer les
options correctes avant de lancer
mysqld
. Ce script
est utilisé sur les systèmes Unix BSD. Il est aussi appelé
par
mysql.server
.
safe_mysqld
, le script père de
mysqld
.
-
En appelant
mysql.server
. Ce script sert principalement au moment du
démarrage et de l'extinction du système, sur les systèmes qui utilisent un
dossier de processus programmés System V, où il est généralement enregistré
sous le nom de
mysql
.
Le script
mysql.server
lance le serveur en appelant
mysqld_safe
.
Le script de démarrage
mysql.server
.
-
Sur Mac OS X, vous pouvez installer un paquet indépendant appelé
MySQL Startup Item
pour activer le lancement automatique de MySQL au démarrage. Le
Startup Item
lance le serveur en appelant
mysql.server
.
Voir Installer MySQL sous Mac OS X pour plus de détails.
Les scripts
mysql.server
et
safe_mysqld
et le
StartUp Item
de
Mac OS X
peuvent être utilisés
pour démarrer le serveur automatiquement au moment du démarrage du serveur.
mysql.server
peut aussi servir à arrêter le serveur.
Le script
mysql.server
peut servir à démarrer ou arrêter le serveur
en l'appelant avec les arguments
start
ou
stop
:
shell> mysql.server start shell> mysql.server stop
|
Avant que
mysql.server
ne démarre le serveur, il change de dossier
pour aller dans le dossier d'installation et appelle
safe_mysqld
.
Si vous voulez que le serveur fonctionne sous un nom d'utilisateur spécifique,
ajoutez l'option
user
appropriée dans le groupe
[mysqld]
du fichier
/etc/my.cnf
, tel que présenté ultérieurement dans cette section
(il est possible que vous ayez besoin d'éditer
mysql.server
).
Vous pourriez avoir à éditer
mysql.server
si vous avez une installation
binaire dans une situation non standard. Modifiez la commande
cd
avec le dossier correct, avant qu'il n'exécute
safe_mysqld
. Si vous voulez
que le serveur fonctionne avec un utilisateur spécifique, ajouter l'option
user
appropriée dans le fichier
/etc/my.cnf
, tel que présenté
ultérieurement dans cette section.
mysql.server stop
arrête le serveur en lui envoyant un signal. Vous
pouvez éteindre le serveur manuellement avec la commande
mysqladmin shutdown
.
Pour lancer et arrêter automatiquement MYSQL sur votre serveur, vous devez ajouter
les commandes de lancement et d'arrêt dans les bons endroits de vos fichiers
/etc/rc*
.
Notez que si vous utilisez des paquets Linux
RPM
(
MySQL-server-VERSION.rpm
), le script
mysql.server
est installé sous
le nom
/etc/init.d/mysql
. Vous n'avez pas à l'installer manuellement. Voyez
Installer MySQL sous Linux pour plus d'informations sur les paquets Linux
RPM
.
Certaines éditeurs fournissent des paquets
RPM
qui installent un script de
démarrage sous un autre nom, comme
mysqld
.
Si vous installez MySQL depuis une distribution source, ou en utilisant
une distribution binaire qui n'installe pas automatiquement le script
mysql.server
, vous pouvez l'installer manuellement. Le script est disponible
dans le dossier
support-files
du dossier d'installation MySQL, ou dans le
dossier source de MySQL.
Pour installer
mysql.server
manuellement, copiez le dans le dossier
/etc/init.d
sous le nom
mysql
, puis rendez-le exécutable. Pour cela, placez vous dans
le dossier où
mysql.server
est stocké, et utilisez ces commandes :
shell> cp mysql.server /etc/init.d/mysql shell> chmod +x /etc/init.d/mysql
|
Les anciens systèmes Red Hat utilisent le dossier
/etc/rc.d/init.d
plutôt que
/etc/init.d
. Adaptez les commandes précédentes. Alternativement, créez un lien
symbolique
/etc/init.d
qui pointe sur
/etc/rc.d/init.d
:
shell> cd /etc shell> ln -s rc.d/init.d .
|
Après installation du script, les commandes doivent être activées pour fonctionner
au lancement du système, sur votre système d'exploitation. Sous Linux, vous
pouvez utiliser
chkconfig
:
shell> chkconfig --add mysql
|
Sur certains systèmes Linux, les commandes suivantes sont aussi nécessaires pour
activer totalement le script
mysql
:
shell> chkconfig --level 345 mysql on
|
Sous FreeBSD, les scripts de démarrage vont généralement dans le dossier
/usr/local/etc/rc.d/
. La page de manuel
rc(8)
indique que les scripts
de ce dossier ne sont exécutés que si leur nom est de la forme
*.sh
. Tout autre fichier de ce dossier sera alors ignoré. En d'autres termes,
vous devez installer le script
mysql.server
sous le nom
/usr/local/etc/rc.d/mysql.server.sh
pour activer le démarrage automatique.
Alternativement à la configuration précédente, certains systèmes d'exploitation
utilisent aussi
/etc/rc.local
ou
/etc/init.d/boot.local
pour lancer des
services supplémentaires au démarrage. Pour lancer MySQL avec cette méthode,
vous pouvez ajouter une commande comme celle-ci au fichier de démarrage :
/bin/sh -c 'cd /usr/local/mysql; ./bin/mysqld_safe --user=mysql &'
|
Pour les autres systèmes, consultez la documentation de votre système d'exploitation
pour savoir comment installer un script de démarrage.
Vous pouvez aussi ajouter des options à
mysql.server
via le fichier global
/etc/my.cnf
file. Un fichier
/etc/my.cnf
typique peut ressembler
à ceci :
[mysqld] datadir=/usr/local/mysql/var socket=/var/tmp/mysql.sock port=3306 user=mysql [mysql.server] basedir=/usr/local/mysql
|
Le script
mysql.server
comprend les options suivantes :
basedir
,
datadir
et
pid-file
. Si spécifiées, elles
doivent
être placées dans un fichier d'option, et non pas en ligne de commande.
mysql.server
comprend les options de ligne de commande
start
et
stop
.
La table suivante montre quels groupes d'options chaque scripts de démarrage
utilise :
Script
|
Groupe d'options
|
mysqld
|
mysqld
et
server
|
mysql.server
|
mysql.server
,
mysqld
, et
server
|
safe_mysqld
|
mysql.server
,
mysqld
, et
server
|
[mysqld-major-version]
signifie que des groupes ayant des noms tels que
[mysqld-4.0]
,
[mysqld-4.1]
, et
[mysqld-5.0]
seront lus par les
serveurs de versions 4.0.x, 4.1.x, 5.0.x, etc. Cette fonctionnalité a été ajoutée en
MySQL 4.0.14. Elle sert à spécifier des options qui ne seront lues que par des serveurs
dont les versions sauront les comprendre.
A des fins de compatibilité ascendante,
mysql.server
lit aussi
le groupe d'options
[mysql_server]
et
mysqld_safe
lit
le groupe d'options
[safe_mysqld]
. Cependant, il est recommandé
de modifier vos fichiers de configuration pour utiliser
les groupes
[mysql.server]
et
[mysqld_safe]
à la place.
Utiliser les fichiers d'options .
|