CentOS5 に phpMyAdmin をインストール

2009-11-26 07:00
このエントリーをはてなブックマークに追加

インストール

EPEL に RPM パッケージが用意されています。yum で EPEL を使えるようにして phpMyAdmin をインストールします。

# yum install phpMyAdmin

アクセス許可

初期状態では、サーバのローカルからしか許可されていません。これをローカルエリアネットワークからアクセスできるように許可するには、/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.1.0/24 ←追加
</Directory>

これで http://サーバ名/phpmyadmin/ にアクセスして、ログイン画面が出ればOKです。

もちろん、インターネット側からアクセスできるような設定もできますが、その場合は IP アドレスを限定したり Digest 認証の設定をするなどセキュリティには注意を払いましょう。

「mcrypt 拡張をロードできません」のエラー

phpMyAdmin の mcrypt のエラー

mcrypt 拡張をロードできません。PHPの設定を確認してください」というエラーが出た場合は、php-mcrypt パッケージがインストールされていません。yum でインストールして、Apache を再起動します。

# yum install php-mcrypt
# service httpd graceful

blowfish_secret の設定

phpMyAdmin の browfish_secret が未設定というエラー画面

設定ファイルが秘密のパスフレーズ(blowfis_secret)を必要とするようになりました」というエラーが出た場合は、/usr/share/phpmyadmin/config.inc.php ファイルを編集して、$cfg[‘blowfish_secret’] に秘密のパスフレーズを設定します。

$cfg['blowfish_secret'] = 'ここに秘密のパスフレーズを設定'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

サーバが応答しません (あるいはローカルの MySQL サーバのソケットが正しく設定されていません)のエラー

サーバが応答しません (あるいはローカルの MySQL サーバのソケットが正しく設定されていません)k5o\

「サーバが応答しません (あるいはローカルの MySQL サーバのソケットが正しく設定されていません)」というエラーが出るときは、メッセージどおり、MySQL のサーバが動いていない可能性があります。phpMyAdmin と MySQL のホストが異なる場合は、/usr/share/phpmyadmin/config.inc.php の $cfg[‘Servers’][$i][‘host’] を変更します。

$cfg['Servers'][$i]['host'] = '192.168.1.100';  //←localhost から変更

RPM インストールであれば問題ないはずですが、それでもつながらない場合、ソケットの場所を確認します。ターミナルから mysql コマンドで接続したら statusコマンドでソケットのパスを確認します。

$ mysql -u root
mysql> status
--------------
UNIX socket:            /var/lib/mysql/mysql.sock

このパスを、phpMyAdmin の config.inc.php に記述します。また connect_type も確認しましょう。

$cfg['Servers'][$i]['connect_type']  = 'socket';       // ←tcpから変更
$cfg['Servers'][$i]['socket']        = '/var/lib/mysql/mysql.sock'; 

ログイン画面の前にブラウザのパスワードダイアログが表示される

ログイン画面の前にパスワードダイアログがでる場合、以下の方法でログイン画面の表示に変更できます。管理画面に別途 Digest 認証などをかけているときは干渉して都合が悪いです。

$cfg['Servers'][$i]['auth_type']     = 'cookie'; //←http から変更

ログイン画面が出たら、通常は mysql データベースのログインアカウントとパスワードで入れるはずです。MySQL の初期状態では root ユーザでパスワード無しでは入れてしまいますので、その場合は root のパスワードを設定しましょう。

上記のように ‘cookie’ に設定したときに、「#1045 – Access denied for user ~@localhost」のようなエラーが出て、正しいユーザ名とパスワードを入れても拒絶されることがあります。これは Cookie におかしな情報が残っているときですので一度ブラウザを終了させるか、Cookie を消去することで治ると思います。

コメントはまだありません

No comments yet.

Sorry, the comment form is closed at this time.

34 queries. HTML convert time: 0.073 sec. Powered by WordPress. Valid XHTML
Copyright © 2003-2017 @ futuremix.org ログイン