:: DEVELOPER ZONE
すべての人が MySQL 通信ソケット /tmp/mysql.sock を削除できるということが問題であれば、Unix の多くのバージョンにおいて、/tmp ファイルシステムに sticky ビットを設定することにより、そのファイルシステムを保護できるようになっています。root としてログインし、以下を行います。
shell> chmod +t /tmp
これによって、/tmp ファイルシステムが保護され、ファイルの所有者かスーパーユーザ(root)しかファイルを削除できなくなります。
ls -ld /tmp を実行して、sticky ビットが設定されているかどうかを確認できます。
最後のアクセス権ビットが t であれば、ビットは設定されています。
MySQL がソケットファイルを使用または置く場所を、以下の方法で変更できます。
グローバルオプション設定ファイルまたはローカルオプション設定ファイルのパスを指定する。
たとえば、/etc/my.cnf に置く場合
[client] socket=path-for-socket-file [mysqld] socket=path-for-socket-file
コマンドラインで --socket=path-for-socket-file オプションを使用して、mysqld_safe と大部分のクライアントに対してソケットを置く場所を指定する。
ソケットファイルのパスを、MYSQL_UNIX_PORT 環境変数で指定する。
configure を --with-unix-socket-path=path-for-socket-file オプションとともに使用して、パスを定義する。 See 項2.3.3. 「一般的な configure オプション」。
以下のコマンドで、ソケットの動作をテストできます。
shell> mysqladmin --socket=/path/to/socket version
© 1995-2005 MySQL AB. All rights reserved.
