トップページへ
 - いらっしゃいませ♪ -
戻る
ゲストブック
 - 設定方法 -
インストール
動作確認
 - 動的WEB -
WEBページの作成
ファイルの呼び出し
CSSファイルの切替
更新日付の表示
文字化けの設定
 - アクセラレータ -
PHP Accelerator
 - ツール -
phpMyAdmin
 - ご紹介♪ -
参考サイト
 - スポンサード リンク -


phpMyAdminの導入

更新日:2005/10/14

phpMyAdmin はブラウザ上から MySQL を管理することの出来るとても便利なツールです。PHPが使える環境ならば、是非導入してみましょう。

phpMyAdmin を使うと、

  • データベースの作成と削除
  • テーブルの作成 ・ コピー ・ 削除 ・ リネーム ・ 定義の変更
  • フィールドの削除 ・ 修正 ・ 追加
  • SQL ステートメントの実行

といった操作が行えるようになるため、コマンドからの操作を覚えていなくても十分な機能を扱うことが出来るようになります。詳しくはマニュアル ( phpMyAdmin 2.6.1-pl3 ドキュメント ) を是非ご覧下さい。

phpMyAdminのインストール

それでは、出来るだけ安全な運用を考慮して phpMyAdmin を導入したいと思います。このツールはブラウザから操作するため、外部へホームページを公開している場合は、外部からもアクセスできてしまいます。そこで、

  • LAN内からのみ接続可能
  • パスワード認証によるログイン

というセキュリティ設定を行います。外部からも接続できるようにする場合は、SSLによる暗号化通信を設定した上で、パスワードによる認証を行うとよいでしょう。

また前提として、

  • MySQL がインストールされ、rootのパスワードが設定してある
  • PHP がインストールされている

とします。phpMyAdmin のベースになるバージョンは、PHP5 、 MySQL4.1 & 5.0 です。私は、PHP4.3.11 & MySQL4.0.23 の環境にインストールしています。ちと時代遅れですか。。。

それではまず phpMyAdmin 用のユーザーを追加します。

$ su -
password:

# useradd -g apache phpmyadmin → apacheグループに所属
# passwd phpmyadmin → パスワードも忘れずに設定

ここではマニュアルを参考にして、

[ ユーザー名 : phpmyadmin ]

[ グループ名 : apache ]

としました。

次に phpMyAdmin の本家である The phpMyAdmin Project から最新のプログラムをダウンロードします。

http://www.phpmyadmin.net/home_page/

上記のサイトを開き、

画面左下の DOWNLOADS をクリックします。

現在 ( 2005年 9月10日 ) の最新バージョンは 2.6.4 です。今回はこれをダウンロードしてインストールします。

リストの真中の phpMyAdmin-2.6.4.tar.gz をクリックします。

ダウンロード先の一覧が表示されます。ここでは日本のサイトである 北陸先端科学技術大学院大学 からダウンロードします。Downloadの欄にあるアイコンをクリックして下さい。

ダウンロード先の画面が表示されます。ここではダウンロードを行わず、後でコマンドからダウンロードしたいと思いますので、ダウンロードは一旦キャンセルし、上図のアドレスをコピーしておいて下さい。

http://jaist.dl.sourceforge.net/sourceforge/phpmyadmin/phpMyAdmin-2.6.4.tar.gz

次に phpmyadmin ユーザーを使ってファイルのダウンロードと解凍を行います。

# su - phpmyadmin
$ cd ~
$ chmod 711 ~
$ wget http://jaist.dl.sourceforge.net/sourceforge/phpmyadmin/phpMyAdmin-2.6.4.tar.gz
$ tar zxvf phpMyAdmin-2.6.4.tar.gz

インストール作業は以上です。次に環境設定ファイルを編集します。

環境ファイルの編集

設定ファイルは、

[ /home/phpmyadmin/ダウンロードしたディレクトリ/config.inc.php ]

です。続けてコマンドライン端末から作業を行います。

$ cd phpMyAdmin-2.6.4 → 解凍したディレクトリへ移動
$ chmod 660 config.inc.php → アクセス権の変更
$ vi config.inc.php

ファイルが開いたら、以下のように編集していきます。

36行目
$cfg['PmaAbsoluteUri'] ='';
        ↓
$cfg['PmaAbsoluteUri'] = $_SERVER["HTTP_HOST"] . '/~phpmyadmin/';

ブラウザから表示されるディレクトリの設定です。この $_SERVER["HTTP_HOST"] はPHPの関数でサーバーのアドレスが格納されます。そして間にある"."は前と後ろをくっ付けています。よって私のサイトの場合では、

[ $cfg['PmaAbsoluteUri'] = 'http://vine-linux.ddo.jp/~phpmyadmin/'; ]

と入力したのと同じことになります。

73行目
$cfg['Servers'][$i]['auth_type'] = 'config'; 
        ↓
$cfg['Servers'][$i]['auth_type'] = 'http'; 

認証を行う為の設定です。http または cookie を指定指定することによって、ベーシックな認証画面が表示されます。configは認証を行いませんので、ご注意下さい。

74行目
$cfg['Servers'][$i]['user'] = 'root'; 
        ↓
$cfg['Servers'][$i]['user'] = ''; 

認証を行わない場合のログインユーザーを指定します。今回は認証を行うのでユーザーの設定を削除しておきます。

111・112行目
$cfg['Servers'][$i]['AllowDeny']['order'] // Host authentication order, leave blank to not use
                   = '';
        ↓
$cfg['Servers'][$i]['AllowDeny']['order'] // Host authentication order, leave blank to not use
                   = 'deny,allow';

アクセス権限の設定です。deny,allow の順序に設定しています。

113・114行目
$cfg['Servers'][$i]['AllowDeny']['rules'] // Host authentication rules, leave blank for defaults
                   = array();
        ↓
$cfg['Servers'][$i]['AllowDeny']['rules'] // Host authentication rules, leave blank for defaults
                   = array(
                   'deny % from all',
                   'allow % from localhost',
                   'allow % from 192.168.0.0/24'
                   ); 

そしてアクセス可能なアドレスを設定しています。上記ではMySQL上のユーザー全てに対する設定として " % " を使用していますが、例えば root だけに対する制限の場合は % を root にして、

[ 'deny root from all', ]

と入力することで指定出来ます。

これでサーバー上またはローカルアドレスからのアクセスのみ可能となりました。

ファイルの編集は以上です。

次にブラウザからアクセスできるように、ディレクトリの名称を変更します。

$ cd .. → /home/phpmyadminへ移動
$ mv phpMyAdmin-2.6.4 public_html → 公開するディレクトリへリネーム
$ exit

それでは実際にブラウザからアクセスしてみて下さい。

私のサイトの場合は、

[ http://vine-linux.ddo.jp/~phpmyadmin/ ]

です。無事に表示されましたか?

しかし、このままですと外部からも認証の画面が表示されてしまいます。この表示も出さないようにするためには、apacheの標準機能である .htaccess を使ったアクセス制限を行います。

まずは、 .htaccess が使用できるようになっているか確認して下さい。サイト全体に許可する場合は、[ /etc/httpd/conf/httpd.conf ] の記述を以下のように変更します。

<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>

となっている行の

[ AllowOverride None ]

[ AllowOverride All ]

に変更します。そしてapacheを再起動して下さい。

# service httpd restart

これで .htaccess ファイルが使用できるようになりました。それでは、phpmyadminユーザーのディレクトリに .htaccess ファイルを作成します。phpmyadminユーザーでログインして、

$ cd public_html
$ vi .htaccess

と入力し、新規にファイルを作成します。そしてファイルに、

order deny,allow
deny from all
allow from localhost
allow from 192.168.0.0/24

と入力します。これで外部からの接続はエラーとなり、表示すらできなくなりました。

後は実際に phpMyAdmin を使って作業を行ってみて下さい。phpMyAdminの基本的な導入方法の説明は以上です。

補足

文字化けによるトラブルが発生する場合は、設定ファイル config.inc.php の DefaultCharset を、

418行目
$cfg['DefaultCharset'] = 'iso-8859-1'; 
        ↓
$cfg['DefaultCharset'] = 'euc-jp';

とすると、デフォルトの文字コードを euc-jp にすることが出来ます。この記述は、454行目以降にあるリストから選択するとよいでしょう。


< トップへ >