データベースシステム MySQL を管理するツールの一つとして phpMyAdmin というものがあります。
これは php でできているため、使用するには php を実行できる環境 (Apache 等) が必要となります。管理対象のデータベース
MySQL と、管理ツールを置くための Apache の設定については完了しているものとして話を進めて行きます。
なお、MySQL のインストールについては データベースシステム
MySQL をインストールする (CentOS 5.4) にも記してありますので、必要に応じてそちらもご確認ください。
それでは phpMyAdmin のインストールを行って行きます。
phpMyAdmin は "dag" リポジトリからの入手となります。リポジトリの追加方法については
CentOS 5.4
のシステムアップデート取得先としてリポジトリを追加する に記してありますので、そちらの方も参考にしてみてください。
次のようにして phpMyAdmin のインストールを行います。
yum install --enablerepo=dag phpmyadmin
このようにすると、平成 22 年 2 月 2 日現在、"phpmyadmin 2.11.10-2.el5.rf" がインストールされました。
また、それと併せて "libmcrypt 2.5.8-4.el5.centos" や "php-mcrypt
5.1.6-15.el5.centos.1"、"php-mysql 5.1.6-24.el5_4.5" や "php-pdo
5.1.6-24.el5_4.5" といった 4 つの依存パッケージもインストールされました。
インストールが完了したら、続いて phpMyAdmin の設定調整を行います。
まず "/usr/share/phpmyadmin/config.inc.php" 内の $cfg['blowfish_secret']
の値を調整します。
$cfg['blowfish_secret'] = '********';
ここには Cookie
認証のためのパスワードを設定することになるそうです。任意にパスワードを設定できます。このパスワードは人間が入力することはないそうなので、とりあえず何か複雑なものをつけておけば大丈夫でしょう。
そして、Apache の設定ファイルを調整して、phpMyAdmin を参照できるようにします。
CentOS 5.4 の場合は "/etc/httpd/conf.d/" ディレクトリ内に例えば "phpmyadmin.conf"
を作成するなり、その他の適切な設定ファイル内などに次の内容を記載します。
<Directory /usr/share/phpmyadmin>
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from 192.168.0
</Directory>
これで、設定したサイトの /phpmyadmin/ へアクセスすれば、MySQL を管理するページへ接続することができるようになります。
なお、上記の例では接続可能な端末として、IP アドレスが 127.0.0.1 と 192.168.0.0 から 192.168.0.255
までに制限がかけられていますので注意しましょう。この制限は、環境に応じて各自調整する必要があります。
仮想ドメインで phpMyAdmin を利用したい場合には、その <VirtualHost> ディレクティブ内で "Include
/etc/httpd/conf.d/phpmyadmin.conf" として設定を取り込んであげる形にすると簡単です。
phpMyAdmin へ接続できたら、MySQL に登録されているアカウント情報を入力することで、管理ページにログインすることが可能です。
もしこのとき "#2002 - サーバが応答しません (あるいはローカルの MySQL サーバのソケットが正しく設定されていません)"
というエラーが表示されてしまう場合には、PHP 側と MySQL 側とで socket の設定が異なっているかもしれません。
その際は一度、"/etc/my.cnf" 内の "socket" で指定した値と "/etc/php.ini" 内の
"mysql.default_socket" で指定した値とが一致することを確認すると良いでしょう。
なお、"mysql.default_socket" が空欄の場合には、それは "/var/lib/mysql/mysql.sock"
が指定されたのと同じ意味になるようです。
または SELinux によるセキュリティ制御機構が影響している場合もあります。
これについては mysqld_t のみならず httpd_t の方も socket
を開く権限がないために発生することがあるので注意が必要です。特に "/etc/my.cnf" の "socket"
の値を変更した場合は気をつけましょう。
SELinux の設定方法については Linux
のセキュリティ設定 (SELinux) の方に記してありますので、そちらを参考にしてください。