コマンドラインから複数のサーバを手動で起動するには、コマンドラインまたはオプション
ファイルで必要なオプションを指定します。オプション
ファイルでオプションを設定する方は簡単ですが、それぞれのサーバに固有のオプション
セットを確実に設定するには注意が必要です。これを行うには、それぞれのサーバにオプション
ファイルを作成し、サーバ起動時に
--defaults-file
を使用して、サーバにファイル名を指定します。
たとえば、mysqld
を、C:\mydata1
というデータディレクトリ、ポート 3307
で実行し、一方で、mysqld-debug
を、C:\mydata2
というデータディレクトリ、ポート 3308
で実行するとします。実行する前に、それぞれのディレクトリがあることを確認し、それぞれに権限テーブルを含む
mysql
データベースのコピーがあることも確認します。それから、2
つのオプション
ファイルを作成します。たとえば、次のような
C:\my-opts1.cnf
という名前のファイルを作成します。
[mysqld] datadir = C:/mydata1 port = 3307
そして、C:\my-opts2.cnf
という名前の 2
番目のファイルを、次のように作成します。
[mysqld] datadir = C:/mydata2 port = 3308
それぞれのオプション ファイルで、それぞれのサーバを起動します。
C:\>C:\mysql\bin\mysqld --defaults-file=C:\my-opts1.cnf
C:\>C:\mysql\bin\mysqld-debug --defaults-file=C:\my-opts2.cnf
Windows NT では、サーバがフォアグラウンドで起動するため、2 つのコマンドを別々ののコンソール ウィンドウで実行します。
サーバをシャットダウンするには、該当するポート番号に接続する必要があります。
C:\>C:\mysql\bin\mysqladmin --port=3307 shutdown
C:\>C:\mysql\bin\mysqladmin --port=3308 shutdown
この例示のように設定したサーバは、クライアントに対して
TCP/IP 接続を許可します。Windows
の名前付きパイプ接続も可能にするには、mysqld-nt
サーバを使用し、名前付きパイプを有効にするオプションでその名前を指定します(名前付きパイプ接続をサポートするサーバは、それぞれ固有のパイプ名を使用します)。たとえば、C:\my-opts1.cnf
ファイルを次のように修正します。
[mysqld] datadir = C:/mydata1 port = 3307 enable-named-pipe socket = mypipe1
そして、サーバを次のように起動します。
C:\> C:\mysql\bin\mysqld-nt --defaults-file=C:\my-opts1.cnf
2 つ目のサーバで使用する
C:\my-opts2.cnf
も同様に修正します。
共有メモリ接続をサポートするときにも、同様の手順で設定します。--shared-memory
オプションで接続を有効化し、--shared-memory-base-name
オプションで固有の共有メモリ名をそれぞれのサーバに指定します。