(mysql.info.gz) Multiple Windows services
Info Catalog
(mysql.info.gz) Multiple Windows command-line servers
(mysql.info.gz) Multiple Windows servers
5.10.1.2 Starting Multiple Windows Servers as Services
......................................................
On NT-based systems, a MySQL server can be run as a Windows service. The
procedures for installing, controlling, and removing a single MySQL
service are described in Windows start service.
As of MySQL 4.0.2, you can install multiple servers as services. In
this case, you must make sure that each server uses a different service
name in addition to all the other parameters that must be unique per
server.
For the following instructions, assume that you want to run the
`mysqld-nt' server from two different versions of MySQL that are
installed at `C:\mysql-4.0.8' and `C:\mysql-4.0.17', respectively.
(This might be the case if you're running 4.0.8 as your production
server, but want to test 4.0.17 before upgrading to it.)
The following principles apply when installing a MySQL service with the
`--install' or `--install-manual' option:
* If you specify no service name, the server uses the default
service name of `MySQL' and the server reads options from the
`[mysqld]' group in the standard option files.
* If you specify a service name after the `--install' option, the
server ignores the `[mysqld]' option group and instead reads
options from the group that has the same name as the service. The
server reads options from the standard option files.
* If you specify a `--defaults-file' option after the service name,
the server ignores the standard option files and reads options
only from the `[mysqld]' group of the named file.
* Before MySQL 4.0.17, only a server installed using the default
service name (`MySQL') or one installed explicitly with a service name
of `mysqld' will read the `[mysqld]' group in the standard option
files. As of 4.0.17, all servers read the `[mysqld]' group if they read
the standard option files, even if they are installed using another
service name. This allows you to use the `[mysqld]' group for options
that should be used by all MySQL services, and an option group named
after each service for use by the server installed with that service
name.
Based on the preceding information, you have several ways to set up
multiple services. The following instructions describe some examples.
Before trying any of them, be sure that you shut down and remove any
existing MySQL services first.
* *Approach 1:* Specify the options for all services in one of the
standard option files. To do this, use a different service name
for each server. Suppose that you want to run the 4.0.8
`mysqld-nt' using the service name of `mysqld1' and the 4.0.17
`mysqld-nt' using the service name `mysqld2'. In this case, you
can use the `[mysqld1]' group for 4.0.8 and the `[mysqld2]' group
for 4.0.17. For example, you can set up `C:\my.cnf' like this:
# 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
Install the services as follows, using the full server pathnames
to ensure that Windows registers the correct executable program
for each service:
C:\> C:\mysql-4.0.8\bin\mysqld-nt --install mysqld1
C:\> C:\mysql-4.0.17\bin\mysqld-nt --install mysqld2
To start the services, use the services manager, or use `NET START'
with the appropriate service names:
C:\> NET START mysqld1
C:\> NET START mysqld2
To stop the services, use the services manager, or use `NET STOP'
with the appropriate service names:
C:\> NET STOP mysqld1
C:\> NET STOP mysqld2
* *Approach 2:* Specify options for each server in separate files
and use `--defaults-file' when you install the services to tell
each server what file to use. In this case, each file should list
options using a `[mysqld]' group.
With this approach, to specify options for the 4.0.8 `mysqld-nt',
create a file `C:\my-opts1.cnf' that looks like this:
[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
Install the services as follows (enter each command on a single
line):
C:\> C:\mysql-4.0.8\bin\mysqld-nt --install mysqld1
--defaults-file=C:\my-opts1.cnf
C:\> C:\mysql-4.0.17\bin\mysqld-nt --install mysqld2
--defaults-file=C:\my-opts2.cnf
To use a `--defaults-file' option when you install a MySQL server
as a service, you must precede the option with the service name.
After installing the services, start and stop them the same way as
in the preceding example.
To remove multiple services, use `mysqld --remove' for each one,
specifying a service name following the `--remove' option. If the
service name is the default (`MySQL'), you can omit it.
Info Catalog
(mysql.info.gz) Multiple Windows command-line servers
(mysql.info.gz) Multiple Windows servers
automatically generated byinfo2html