単一の MySQL Server をコマンド行から手動で起動するための手順はセクション2.3.5.5「Windows のコマンド行からの MySQL の起動」に記載されています。複数のサーバーをこの方法で起動する場合、コマンド行またはオプションファイルで適切なオプションを指定することができます。オプションをオプションファイルに配置する方が便利ですが、各サーバーが確実にそれ独自のオプションのセットを取得するようにすることが必要です。これを行うには、サーバーごとにオプションファイルを作成し、サーバーを実行するときに --defaults-file
オプションを使用してファイル名をサーバーに指示します。
たとえば mysqld をポート 3307 でデータディレクトリ C:\mydata1
を使用して実行し、mysqld-debug をポート 3308 でデータディレクトリ C:\mydata2
を使用して実行するとします。次の手順を使用します。
各データディレクトリが存在し、付与テーブルを格納する
mysql
データベースの独自のコピーも含まれていることを確認します。-
2 つのオプションファイルを作成します。たとえば、次のような
C:\my-opts1.cnf
という名前のファイルを作成します。[mysqld] datadir = C:/mydata1 port = 3307
そして、次のような
C:\my-opts2.cnf
という名前の 2 番目のファイルを作成します。[mysqld] datadir = C:/mydata2 port = 3308
-
--defaults-file
オプションを使用して、サーバー独自のオプションファイルを使用して各サーバーを起動します。C:\> C:\mysql\bin\mysqld --defaults-file=C:\my-opts1.cnf C:\> C:\mysql\bin\mysqld-debug --defaults-file=C:\my-opts2.cnf
各サーバーはフォアグラウンドで起動するため (あとでサーバーが終了するまで新しいプロンプトは表示されない)、これらの 2 つのコマンドを別のコンソールウィンドウで発行する必要があります。
サーバーをシャットダウンするには、適切なポート番号を使用して各サーバーに接続します。
C:\> C:\mysql\bin\mysqladmin --port=3307 shutdown
C:\> C:\mysql\bin\mysqladmin --port=3308 shutdown
上述のように構成されたサーバーは、クライアントが TCP/IP 経由で接続することを許可します。使用している Windows のバージョンが名前付きパイプをサポートし、名前付きパイプ接続も許可する場合、mysqld または mysqld-debug サーバーを使用し、名前付きパイプを有効にしてその名前を指定するオプションを指定します。名前付きパイプ接続をサポートする各サーバーは、一意のパイプ名を使用する必要があります。たとえば、C:\my-opts1.cnf
ファイルは次のように修正されることがあります。
[mysqld]
datadir = C:/mydata1
port = 3307
enable-named-pipe
socket = mypipe1
2 番目のサーバーで使用する C:\my-opts2.cnf
も同様に修正します。そのあと、前に説明したようにサーバーを起動します。
共有メモリー接続を許可するサーバーについても同様の手順が適用されます。--shared-memory
オプションでそのような接続を有効化し、--shared-memory-base-name
オプションでそれぞれのサーバーに対して一意の共有メモリー名を指定します。