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 server, 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é.
Ces principes s'appliquent aussi si vous installez le serveur en utilisant
l'option
--install-manual
.
En se basant sur les informations précédentes, vous avez plusieurs
moyens pour installer des services Windows multiples. Les insctructions
suivantes décrivent certaines situations. Avant de tous les essayer,
assurez vous de bien éteindre et supprimer tous les services MySQL existant.
-
Spécifiez les options de tous les services dans un fichier d'options.
Pour cela, utilisez différent noms deservices 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
|
Note : avant MySQL 4.0.17, seul un serveur installé avec le nom de service
par défaut (
MySQL
) ou un service installé explicitement avec un nom
de service de
mysqld
pouvait lire le groupe
[mysqld]
dans le
fichier d'option standard. Depuis la version 4.0.17, tous les serveurs lisent
le groupe
[mysqld
s'ils lisent le fichier d'options standard, même
s'ils sont installés en utilisant un autre nom de service. Cela permet
au groupe
[mysqld]
d'être utilisé par tous les services MySQL, alors
que le groupe portant le nom de chaque service spécifique ne sera utilisé
que par le service de ce nom.
-
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
|
For the 4.0.17
mysqld-nt
, create a file
C:\my-opts2.cnf
that looks like this:
[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'installatoin 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.
|