設置実績

phpMyAdminMySQLPHPApacheOSDate設置者
2.6.4-pl34.1.155.0.42.0.55Windows XP Home(SP2)2005-11-09y2sunlight
2.6.3-pl14.1.10a5.0.42.0.53Windows XP Pro.(SP2)2005-08-12y2sunlight

 ※PHPは全てマルチバイト対応版です。

その他、本編を参考にインストールした事例があればコメントして下さい。

■コメントスパンが多発しているので当分コメントはお休みします。

2005-08-12

phpMyAdminでMySQLを使う

MySQL にはMySQL AdministratorとMySQL Query BrowserというGCIツールがあります。これらのGUIツールはMySQLサーバ 4.0以上で作動するように設計されてるWindows用のアプリケーションです。詳細は「MySQL4.1/6.MySQL Administrator」及び「MySQL4.1/7.MySQL Query Browser」を参照して下さい。

一方、本章で紹介するphpMyAdmin は WebブラウザでMySQLの管理や操作が行えるツールです。PHPとMySQLの組み合わせでプログラム開発を行う場合は、是非とも揃えておきたいツールの1つです。

本編ではphpMyAdminとMySQLに以下のバージョンを使用します。

  • phpMyAdmin 2.6.3-pl1 Windows版
  • MySQL 4.1.10a Windows版


phpMyAdminがサポートしているMySQLのバージョン

phpMyAdmin 2.6.3-pl1 は MySQL 3.23.32 〜 5.0 までの全バージョン(但し、4.1.0 と 4.1.1 を除く)をサポートしています。MySQL 5.1 はまだサポートされていません。 phpMyAdmin は MySQL サーバに接続する場合、古くからあるPHPのMySQLエクステンション(mysql)だけでなく、PHP 5.0 以降でサポートされた改良版MySQL エクステンション(mysqli)も利用できます。

推奨されるPHPのエクステンションは、MySQL 4.0 以下の場合は昔ながらのエクステンション(mysql)を、MySQL 4.1 以降の場合は改良版エクステンション(mysqli)です。

但し、mysqliに対応していないPHPアプリケーション(xoopsなど:2005/08/11時点)を同じサーバで動かしている場合には要注意です。筆者はxoops2.0.11 JP をphpMyAdminと同じサーバで動かしているのでMySQL 4.1.10a を使用しているにもかかわらず、昔ながらのエクステンション(mysql)の方を使っています。

phpMyAdminの入手

本編でインストールするパッケージは「phpMyAdmin 2.6.3-pl1 Windows版」です。 The phpMyAdmin Project (http://www.phpmyadmin.net )にアクセスします。

phpmyadmin01.gif

サイト内のダウンロードページ( http://www.phpmyadmin.net/home_page/downloads.php )にアクセスします。

phpmyadmin02.gif

[ phpMyAdmin-2.6.3-pl1.zip ] をクリックします。ミラーサイトの選択画面が表示されるので、お好みに合わせてミラーサイトを選んで下さい。ここでダウンロードしたファイルは

phpMyAdmin-2.6.3-pl1.zip

です。

phpMyAdminのインストール

以下の設定は前章「PHP5.0/4.マルチバイト対応のPHP5を使う」に従っています。

仮想ディレクトリの作成

まず、ダウンロードしたファイル(phpMyAdmin-2.6.3-pl1.zip)を解凍し、phpMyAdmin-2.6.3-pl1内の全てのファイルを以下にコピーします。

D:\WWWRoot\phpMyAdmin

D:\WWWRoot\はApacheのドキュメントルートです。本編の設定では phpMyAdmin のURLは

http://localhost/phpMyAdmin/

になります。

php.iniの編集

php.iniを以下のように編集してMySQLのクライアントライブラリを組み込みます。

extension_dir = "C:/php5mb/ext"
・・・
extension=php_mysql.dll

変更後、Apacheを再起動して下さい。

phpMyAdminではPHP5の改良版MySQLクライアントライブラリ(mysqli)が使用できます。この場合は、

extension=php_mysqli.dll

とします。

.htaccessの作成

文字セットに関する設定を.htaccessに書いてD:\WWWRoot\phpMyAdminの下に保存します。この設定はApacheの設定ファイル(httpd.conf)内に<Directory>ディレクティブを使って書くこともできます。

<IfModule mod_php5.c>
  php_value default_charset            UTF-8
  php_value mbstring.internal_encoding UTF-8
  php_value mbstring.script_encoding   UTF-8
  php_value mbstring.http_output       UTF-8
</IfModule>

MySQLサーバのバージョン4.1以上でphpMyAdmin 2.6.3を使用する場合は、MySQLのクライアント文字セットをutf-8にする必要があります。phpMyAdminのローカライゼーションは素晴らしく、使用言語に応じた文字セットでソースコードが用意されいるので、特にeuc-jpを意識する必要がありません。詳しくは、phpMyAdmin/lang の下を見てください。

上の設定ではPHPの内部文字セット(mbstring.internal_encoding)、スクリプト文字セット(mbstring.script_encoding)及びHTTP出力文字セット(mbstring.http_output及びdefault_charset)をutf-8にしています。但し、HTTP出力文字セットはphpMyAdminがMySQLのクライアント文字セットに応じて調節しているようなのでここでの設定は効果がありません。

MySQLの文字セットに関しては「MySQL4.1/9.MySQLの実験/3.漢字の使用」を参照して下さい。

config.inc.phpの編集

phpMyAdminに関する設定はconfig.inc.phpで行います。このファイルはphpMyAdminのインストールディレクトリにあります。本編の場合は、次の場所にあります。

D:\WWWRoot\phpMyAdmin\config.inc.php

以下では、config.inc.phpの最低必要な設定項目のみ説明します。phpMyAdminの設定方法(config.inc.php)については、phpMyAdminインストールディレクトリ下の次のHTMLドキュメントに記載されています。

http://localhost/phpMyAdmin/Documentation.html#config

(1) phpMyAdminのURLの設定

$cfg['PmaAbsoluteUri'] = 'http://localhost/phpMyAdmin/';

phpMyAdminのURLを明示的に設定します。phpMyAdmin 2.3.0以降からはこの項目をブランクのままにしておくと自動設定されるようですが、phpMyAdminの画面で警告が出力されます。この場合、画面から警告を消すには以下のようにします。

$cfg['PmaAbsoluteUri_DisableWarning'] = TRUE;

(2) cookie認証用のパスフレーズの設定

$cfg['blowfish_secret'] = '適当なパスフレーズ ';

この設定項目はcookie認証でパスワードを暗号化する場合に使用します。cookie認証を使用しない場合は設定する必要はありません。64文字以内の適当パスフレーズを入力して下さい。

暗号化にはBlowfishが使われています。これはBruce Schneier氏が考案した共通鍵暗号方式のブロック暗号です。

(3) MySQLサーバに関する設定

$i = 0;
// The $cfg['Servers'] array starts with $cfg['Servers'][1].  Do not use $cfg['Servers'][0].
// You can disable a server config entry by setting host to ''.
$i++;
$cfg['Servers'][$i]['host']      = 'localhost';
$cfg['Servers'][$i]['auth_type'] = 'cookie';

phpMyAdminでは複数のMySQLサーバにアクセスする事ができます。上の設定例は第1のサーバに対するものです。config.inc.phpには第2、第3のサーバに対する設定項目も準備されていますが、サーバのホスト名を設定しないと有効な設定と見なされません。

これらの設定項目にはサーバのホスト名などを設定します。サーバがローカル環境にある場合はほどんど変更する箇所はありませんが、認証に関する設定を省略する事はできません。認証には次の3種類があります。

configconfig.inc.php中に平文でパスワードを記述する方式(デフォルト)
httpHTTP認証を使う(基本認証)
cookieクッキー認証


デフォルトの認証方法(config)は変更すべきです。HTTP認証もよく使われていますが、本編では クッキー認証の方を使用します。

phpMyAdminではPHP5の改良版MySQLクライアントライブラリ(mysqli)が使用できます。この場合は、

$cfg['Servers'][$i]['extension'] = 'mysqli';

とします。

(4) デフォルトサーバの設定

$cfg['ServerDefault'] = 1;

複数のMySQLサーバにアクセスする場合、デフォルトのMySQLサーバを設定します。1は最初に設定したサーバを表わします。この値を0にするとデフォルトサーバは無しになり、phpMyAdmin起動時のログイン画面の前にサーバ選択画面が表示されます。

(5) 文字セットに関する設定

$cfg['DefaultLang'] = 'ja-utf-8';
$cfg['DefaultCharset'] = 'utf-8';

デフォルトの言語と文字セットを設定します。これらは単にデフォルトでありユーザは画面上で自由に変更できます。 $cfg['DefaultLang'] にはデフォルトの使用言語を、$cfg['DefaultLang'] にはデフォルトの文字セットを設定できますが、本編ではMySQLサーバのバージョン4.1以上を使用しているので、uft-8以外の設定は意味がありません。

はじめてのphpMyAdmin

設定が終わったらブラウザからphpMyAdminを起動します。

http://localhost/phpMyAdmin/

ログイン画面

phpmyadmin10.gif

本編ではクッキー認証を使用しているので上のようなログイン画面が表示されます。クッキー認証を使うと、使用言語の選択や、サーバの選択がログイン画面上でできるので便利です。

HTTP認証を使用している場合は、ブラウザのHTTP認証画面が表示されます。config認証の場合は、ユーザ名/パスワードが設定ファイル(config.inc.php)に書かれているのでログイン画面はありません。

メイン画面

phpmyadmin11.gif

ログインに成功すると上のメイン画面が表示されます。phpMyAdmin では MySQL サーバのほとんどの事が管理できます。phpMyAdminの主な機能を以下に挙げます。

phpMyAdminの主な機能

  • MySQLユーザと特権の管理
  • データベースの作成と削除
  • テーブルの作成、コピー、削除、リネーム、定義の変更
  • テーブルのメンテナンス(チェック、最適化、復旧、分析)
  • キーの管理
  • SQLステートメント、バッチクエリの実行
  • テーブルデータの追加、変更、削除
  • テーブルデータのインポート(テキストファイル)
  • テーブルデータのエクスポート(CSV/XML/Latex 形式)
  • テーブルダンプの作成と読み込み
  • データベースレイアウトの PDF 画像の作成


最終更新のRSS Last-modified: Thu, 08 May 2008 08:17:53 JST (3480d)