• 締切済み

1台のサーバーでMySQLを複数起動

1台のサーバー(Linux)で複数のMySQLサーバーの起動をしたいと考えています。起動するMySQLサーバーはそれぞれ固有のディレクトリをDATAディレクトリとして指定したいと考えています。 マニュアル等を調べているのですがどうもうまくいきません。 どなたかご存知の方はいないでしょうか?

みんなの回答

回答No.2

datadir(/home/myID/mysql_data/)の下に、「(ホスト名).err」というファイル名で エラー等の情報が入ったログファイルがあると思うのですが、 そこにエラーが出てたりしていないでしょうか?

mayotaro
質問者

お礼

shuyamakawaさんありがとうございます。 結論から言うと自己解決してしまいました。 色々整理されない状態でトライ&エラーを繰り返したのでどれが効果があったのか正確には特定できないのですが以下のものは重要だったのかな(?)と思います。 ■install_dbを行なうときに下記のオプションを追加 --tmpdir=/home/myID/mysql_data/ ■/var/lib/mysqlの属性を700から755に変更して、myIDのグループもmysqlに変更 「(ホスト名).err」というものを探したのですが見当たりませんでした。

回答No.1

どのようにやって、どううまく行かないのかが書かれていないので、 一般的なことを書きますが、 mysql起動時のオプションとして、 --datadir=path(データベースルートのパス) --port(TCP/IPでListenするポート番号) --socket=path(UNIXドメインソケット名) --pid-file(プロセス起動識別ファイル) を、変えてそれぞれのmysqlサーバを起動する必要があると思います。 マニュアルに該当項目がありますので、そちらを参照してください。 http://www.softagency.co.jp/mysql/Manual/4.1.1/html-split/manual_4.html#SEC206 上記マニュアルを見て分からないという事であれば、 どううまく行かないかを補足してください。

参考URL:
http://www.softagency.co.jp/mysql/Manual/4.1.1/html-split/manual_4.html#SEC206
mayotaro
質問者

補足

shuyamakawaさん回答ありがとうございます。 MySQLは4.0.20を使っています。 最初に以下の形で起動したいユーザにてinstall_dbを行ない実行しました。 [install] shell # ./mysql_install_db --user=mydID \ --pid-file=/home/myID/myID.pid \ --socket=/tmp/myID.sock \ --datadir=/home/myID/mysql_data/ \ --port=1235 [実行] shell # mysqld_safe --user=mydID \ --pid-file=/home/myID/myID.pid \ --socket=/tmp/myID.sock \ --datadir=/home/myID/mysql_data/ \ --port=1235 & 結果は下記の通りです。 [結果] shell # Starting mysqld daemon with databases from /home/myID/mysql_data/ 040812 20:40:36 mysqld ended 何かお分かりになることありますでしょうか? よろしくお願いします。