phpMyAdmin の導入方法を説明します。
環境
次の環境へインストールした。
- PHP 5.3.3
- MySQL 5.1.61
それぞれのバージョンは次のコマンドで調べられる。
:bash:
$ php -v
PHP 5.3.3 (cli) (built: May 7 2012 20:13:47)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
$ mysql --version
mysql Ver 14.14 Distrib 5.1.61, for redhat-linux-gnu (x86_64) using readline 5.1
導入手順
大まかな流れ
phpMyAdmin の公式サイトからファイルをダウンロードして展開し、設定を行う。
ダウンロード
まずは phpMyAdmin の公式サイトからダウンロード用 URL を取得する。 ダウンロード用リンクの URL から '/download#!md5!' 以下を削除すれば wget に使える URL になります。
ダウンロードし、MD5 checksum が正しいことを確認してから展開する。
:bash:
$ wget http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/3.5.2/phpMyAdmin-3.5.2-all-languages.tar.bz2
$ openssl md5 phpMyAdmin-3.5.1-all-languages.tar.bz2
MD5(phpMyAdmin-3.5.2-all-languages.tar.bz2)= 1e56ff858ed10dcd4affd4df1e92daff
$ tar -xjf phpMyAdmin-3.5.2-all-languages.tar.bz2
$ mv phpMyAdmin-3.5.2-all-languages phpMyAdmin
phpMyAdmin ディレクトリ内の index.php に自分だけがアクセスできるように Apache などの設定を変更し、phpMyAdmin にログインしてみる。 ログインすると画面の下部にエラーメッセージや警告が表示されるので、それを参考に設定を修正する。
ダウンロードしたディレクトリの中に config.sample.inc.php という設定ファイルのサンプルがあるので、それを config.inc.php にコピーしてから編集する。
以下に日本語ドキュメントがあります。
http://www.phpmyadmin.net/localized_docs/ja/Documentation.html
変更した設定
phpMyAdmin/config.inc.php
次の行について、
$cfg['blowfish_secret'] = 'a8b7c6d'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
'a8b7c6d' のところを各自変更する。
blowfish_secret
を設定しないと、phpMyAdmin にログインした時、次のメッセージが表示される。
設定ファイルが秘密のパスフレーズ(blowfish_secret)を必要とするようになりました
また、次のメッセージが表示されていると思う。
phpMyAdmin 環境保管領域が完全に設定されていないため、いくつかの拡張機能が無効になっています。理由についてはこちらをご覧ください。
リンク先ページの下の方に以下の記述があるのでそれに従って設定する。
- examples/create_tables.sql で必要なテーブルを作成します。
- 作ったテーブルにアクセスできる pma ユーザを作成します。
- 設定ファイル (config.inc.php) で高度な機能を有効にします。config.sample.inc.php にある設定例をコピーするといいでしょう。
- 更新した設定ファイルを読み込むために phpMyAdmin にログインし直します。
具体的には、まず phpMyAdmin/examples ディレクトリへ移動して、次のコマンドを実行する。
$ mysql -u ユーザー名 -p
Enter password:
mysql> source create_tables.sql
mysql> GRANT ALL ON phpmyadmin.* TO pma@localhost IDENTIFIED BY "パスワード";
そして、phpMyAdmin/config.inc.php で次の設定を行い、phpMyAdmin にログインし直せば良い。 controlpass には上で作成した pma ユーザーのパスワードを指定する。
/* User used to manipulate with storage */
// $cfg['Servers'][$i]['controlhost'] = '';
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'パスワード';
/* Storage database and tables */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
$cfg['Servers'][$i]['relation'] = 'pma_relation';
$cfg['Servers'][$i]['table_info'] = 'pma_table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma_column_info';
$cfg['Servers'][$i]['history'] = 'pma_history';
$cfg['Servers'][$i]['table_uiprefs'] = 'pma_table_uiprefs';
$cfg['Servers'][$i]['tracking'] = 'pma_tracking';
$cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';
$cfg['Servers'][$i]['userconfig'] = 'pma_userconfig';
$cfg['Servers'][$i]['recent'] = 'pma_recent';
php の設定
mcrypt 拡張をインストールする。
※yum のリポジトリに epel を追加していない場合は、こちらの記事 にしたがって追加する。
:bash:
$ yum --enablerepo=epel install php-mcrypt
$ /etc/init.d/httpd restart
mcrypt がインストールされていないと、次のメッセージが表示される。
mcrypt 拡張がありません。PHP の設定をチェックしてみてください。
おまけ
phpMyAdmin のタイムアウト時間を変更するには、設定ファイルに次の一行を追加すれば良いです。
$cfg['LoginCookieValidity'] = 43200;
この場合、タイムアウト時間が 43200秒(12時間)になります。
ピンバック: 開発環境 | Annotary