Windows 上では、MySQL Server は Windows サービスとして実行することができます。単一の MySQL サービスをインストール、制御、および削除する手順は、セクション2.3.5.7「Windows のサービスとして MySQL を起動する」に記載されています。
複数の MySQL サービスをセットアップするには、各インスタンスが、インスタンスごとに一意でなければならないほかのパラメータを使用することに加えて、異なるサービス名を使用するようにする必要があります。
次の手順について、mysqld サーバーを、C:\mysql-5.5.9
および C:\mysql-5.6.23
にそれぞれインストールされている 2 つの異なるバージョンの MySQL から実行するとします。(5.5.9 を本番サーバーとして実行しているが、5.6.23 を使用したテストも実行したい場合、このような状況になることがあります。)
MySQL を Windows サービスとしてインストールするには、--install
または --install-manual
オプションを使用します。これらのオプションについては、セクション2.3.5.7「Windows のサービスとして MySQL を起動する」を参照してください。
前述の説明によれば、複数のサービスをセットアップするにはいくつかの方法があります。次の手順では、いくつかの例を説明します。これらのいずれかを試行する前に、既存の MySQL サービスがあればシャットダウンして削除してください。
-
方法 1: いずれかの標準オプションファイル内ですべてのサービスのオプションを指定します。これを行うには、サーバーごとに異なるサービス名を使用します。5.5.9 mysqld をサービス名
mysqld1
で実行し、5.6.23 mysqld をサービス名mysqld2
で実行するとします。この場合、[mysqld1]
グループを 5.5.9 に対して使用し、[mysqld2]
グループを 5.6.23 に対して使用することができます。たとえば、C:\my.cnf
を次のようにセットアップすることができます。# options for mysqld1 service [mysqld1] basedir = C:/mysql-5.5.9 port = 3307 enable-named-pipe socket = mypipe1 # options for mysqld2 service [mysqld2] basedir = C:/mysql-5.6.23 port = 3308 enable-named-pipe socket = mypipe2
各サービスに対して Windows が正しい実行可能プログラムを登録するようにするために、完全なサーバーパス名を使用して、サービスを次のようにインストールします。
C:\> C:\mysql-5.5.9\bin\mysqld --install mysqld1 C:\> C:\mysql-5.6.23\bin\mysqld --install mysqld2
サービスを起動するには、サービスマネージャーを使用するか、または該当するサービス名を指定して NET START を使用します。
C:\> NET START mysqld1 C:\> NET START mysqld2
サービスを停止するには、サービスマネージャーを使用するか、または該当するサービス名を指定して NET STOP を使用します。
C:\> NET STOP mysqld1 C:\> NET STOP mysqld2
-
方法 2: 各サーバーのオプションを別々のファイルに指定し、サービスをインストールするときに
--defaults-file
を使用して、使用するファイルを各サーバーに指示します。この場合、それぞれのファイルで[mysqld]
グループを使用してオプションをリストするようにします。この方法を使用する場合、5.5.9 mysqld のオプションを指定するには、次のようなファイル
C:\my-opts1.cnf
を作成します。[mysqld] basedir = C:/mysql-5.5.9 port = 3307 enable-named-pipe socket = mypipe1
5.6.23 mysqld については、次のようなファイル
C:\my-opts2.cnf
を作成します。[mysqld] basedir = C:/mysql-5.6.23 port = 3308 enable-named-pipe socket = mypipe2
次のようにしてサービスをインストールします (各コマンドを単一行に入力します)。
C:\> C:\mysql-5.5.9\bin\mysqld --install mysqld1 --defaults-file=C:\my-opts1.cnf C:\> C:\mysql-5.6.23\bin\mysqld --install mysqld2 --defaults-file=C:\my-opts2.cnf
MySQL Server をサービスとしてインストールし、
--defaults-file
オプションを使用する場合、サービス名がオプションより前になければなりません。サービスをインストールしたあと、前の例と同じ方法でサービスを起動および停止します。
複数のサービスを削除するには、それぞれのサービスに対して mysqld --remove を使用し、サービス名のあとに --remove
オプションを指定します。サービス名がデフォルト (MySQL
) の場合、サービス名を省略できます。