自サーバではMySQLを運用している。chroot 環境から mysql に接続するときのメモ(バッドノウハウ)。

mysql -u xxx -h 127.0.0.1 –password=xxxx

-h 指定なしだと、デーモンが作成したsockファイル(ウチでは/tmp/mysql.sockとしている)で通信しようとするのだが、chroot 環境からだとそのファイルが見えないので、接続できない。また、”-h localhost” だとなぜか接続できない(同じようにsockファイルを探しにいく)。結果的には、 127.0.0.1 と指定すると TCP/IP での通信が始まり上手く接続できた。
また、chroot環境からgaucheで接続するときも同様に、ホスト名を指定すると TCP/IP で接続できる。

(dbi-connect “dbi:mysql:db=xxxx;host=127.0.0.1” :username “xxxxx” :password “xxxx”)

コメントを残す

メールアドレスが公開されることはありません。