5.9.1 Utiliser plusieurs serveurs MySQL un serveur Windows
5.9 Faire fonctionner plusieurs serveurs MySQL sur la même machine
5 Administration du serveur
Manuel de Référence MySQL 4.1 : Version Française
. Lancer plusieurs serveurs depuis la console ->Lancer plusieurs serveurs comme services Windows
|
5.9.1.2 Lancer plusieurs serveurs comme services Windows Sur les systèmes NT, MySQL peut fonctionner comme un service Windows. Les procédures
pour installer, contrôler et supprimer un service MySQL sont décrites dans la
section Lancer MySQL comme un service Windows .
Depuis MySQL 4.0.2, vous pouvez installer plusieurs serveurs sous forme de plusieurs
services. Dans ce cas, vous devez vous assurer que chaque serveur utilise un nom
de service différente, en plus de tous les autres paramètres qui doivent être
uniques pour chaque instance.
Pour les instructions suivantes, supposez que vous vouez utiliser le serveur
mysqld-nt
avec différentes versions de MySQL, qui sont installées dans les dossiers
C:\mysql-4.0.8
et
C:\mysql-4.0.17
, respectivement. Cela peut être le
cas si vous utilisez la version 4.0.8 comme serveur de production, mais que vous voulez
tester la version 4.0.17 avant de l'utiliser.
Les règles suivantes sont applicables lors de l'installation d'un service MYSQL
avec l'option
--install
:
-
Si vous ne spécifiez aucun nom de service, le serveur utilise le nom de service
par défaut de
MySQL
et le serveur lit les options dans le groupe
[mysqld]
, du groupe de fichiers d'options standard.
-
Si vous spécifiez un nom de service après l'option
--install
, le serveur va ignorer le group d'options
[mysqld]
et lire les options dans le groupe qui a le même nom que le service.
Les options seront lues dans le fichier d'options standard.
-
Si vous spécifiez
--defaults-file
après un nom de service, le serveur
va ignorer le fichier d'options standard, et lire les options dans le groupe
[mysqld]
du fichier ainsi nommé.
Note :
avant MySQL 4.0.17, seul le serveur utilisant le nom de service
par défaut (
MySQL
) ou un service installé explicitement avec le nom de
mysqld
lira le groupe d'options
[mysqld]
dans le fichier d'options.
Depuis 4.0.17, tous les serveurs lisent le groupe
[mysqld]
s'ils lisent
dans le fichier d'options standard, même si ils ont été installé avec un autre
nom de service. Cela permet d'utiliser le groupe
[mysqld]
pour des options qui
doivent être utilisées par tous les services MySQL, et un groupe d'options pour
chaque service sera utilisé individuellement par chaque service.
En se basant sur les informations précédentes, vous avez plusieurs
moyens pour installer des services Windows multiples. Les instructions
suivantes décrivent certaines situations. Avant de tous les essayer,
assurez vous de bien éteindre et supprimer tous les services MySQL existant.
-
Approche 1 :
Spécifiez les options de tous les services dans un fichier d'options.
Pour cela, utilisez différent noms de services pour chaque serveur.
Supposons que vous vouliez utiliser
mysqld-nt
4.0.8 sous le nom de
mysqld1
et le
mysqld-nt
4.0.17 sous le nom de
mysqld2
.
Dans ce cas, vous pouvez utiliser le groupe
[mysqld1]
pour le serveur
version 4.0.8 et le groupe
[mysqld2]
pour le serveur version 4.0.17.
Par exemple, vous pourriez configurer votre fichier d'options
C:\my.cnf
ainsi :
# options for mysqld1 service [mysqld1] basedir = C:/mysql-4.0.8 port = 3307 enable-named-pipe socket = mypipe1 # options for mysqld2 service [mysqld2] basedir = C:/mysql-4.0.17 port = 3308 enable-named-pipe socket = mypipe2
|
Installez les services comme ceci, en utilisant les noms de chemin
complet pour vous assurer que Windows trouve les bons programmes
pour chaque service :
shell> C:\mysql-4.0.8\bin\mysqld-nt --install mysqld1 shell> C:\mysql-4.0.17\bin\mysqld-nt --install mysqld2
|
Pour lancer les services, utilisez le gestionnaire de services, ou bien
utilisez la commande
NET START
avec les bons noms de services :
shell> NET START mysqld1 shell> NET START mysqld2
|
Pour lancer les services, utilisez le gestionnaire de services, ou bien
utilisez la commande
NET STOP
avec les bons noms de services :
shell> NET STOP mysqld1 shell> NET STOP mysqld2
|
-
Approche 2 :
Spécifiez les options de chaque serveur dans un fichier séparé,
et utilisez l'option
--defaults-file
lorsque vous installez le
service pour dire au serveur quel fichier utiliser. Dans ce cas, chaque
fichier doit contenir les options du groupe
[mysqld]
.
Avec cette approche, pour spécifier les options du serveur
mysqld-nt
4.0.8,
il faut créer un fichier
C:\my-opts1.cnf
qui ressemble à ceci :
[mysqld] basedir = C:/mysql-4.0.8 port = 3307 enable-named-pipe socket = mypipe1
|
Pour la version 4.0.17 de
mysqld-nt
, créez un fichier
C:\my-opts2.cnf
qui ressemble à ceci :
[mysqld] basedir = C:/mysql-4.0.17 port = 3308 enable-named-pipe socket = mypipe2
|
Installez les services comme suit (entrez chaque commande comme une seule ligne) :
shell> C:\mysql-4.0.8\bin\mysqld-nt --install mysqld1 --defaults-file=C:\my-opts1.cnf shell> C:\mysql-4.0.17\bin\mysqld-nt --install mysqld2 --defaults-file=C:\my-opts2.cnf
|
Pour utiliser l'option
--defaults-file
lors de l'installation du serveur
MySQL comme service, vous devez la faire précéder du nom de service.
Après avoir installé les services, lancez et arrêtez les services de la
même façon que dans l'exemple précédent.
Pour supprimer plusieurs services, utilisez la commande
mysqld --remove
pour chacun d'entre eux, en spécifiant le nom du service, suivi de l'option
--remove
si le service a un nom qui n'est pas le nom par défaut.
|