« 2005年06月 | メインページ | 2005年08月 »
2005年07月11日
”phpMyAdmin”

"phpMyAdmin 2.6.3-pl1”をインストールしました。
グラフィカルなユーザーインタフェースでMySQLのデーターベース管理が出来るように
なっていて、ターミナルからコマンド操作するよりはかなり効率的です。
【ダウンロード】
下記のURLからダウンロードできます。
http://www.phpmyadmin.net/home_page/index.php
【インストール】
PHPの動作する環境へフォルダーごと全てアップロードする。
【ユーザー名、パスワードの設定】
phpMyAdminフォルダーの中にある"config.inc.php”で設定します。
$cfg['PmaAbsoluteUri'] = 'URL';
'URL’に"phpMyAdmin”を置いたURLを設定します。
(例) 'http://”ドメインネーム”/phpMyAdmin/';
$cfg['Servers'][$i]['user'] = 'ユーザー名';
MySQLのユーザー名を設定する。
$cfg['Servers'][$i]['password'] = 'パスワード';
MySQLのユーザーパスワードを設定する。
【セキュリティー】
”phpMyAdmin”はそのままでは誰でもアクセス出来てしまうので、必ず「htaccess」
「htpasswd」を”phpMyAdmin”のディレクトリーに設定して、セキュリティーを確保
する必要があります。
【エラー】
「MySQL Server」のパスワードを設定してから”phpMyAdmin ”を使ってサーバーに
接続すると、下記のエラーになってうまく行きませんでした。
「Client does not support authentication protocol requested by server;
consider upgrading MySQL client」
(サーバが要求する認証プロトコルをクライアントがサポートしていません。
MySQL クライアントのアップグレードをしてください)
原因は、「MySQL server」のバージョンが”4.0”以前とそれ以後では、パスワードの
認証方式が異なっていて、「MySQL client」も"Server”のバージョンに合わせる必要が
あるようです。今回は「MySQL server」が"4.1.12”であるのに対し、"PHP(4.3.11)"
の「MySQL client」が"3.23.49"であったためと考えられます。
【エラーの対処】
二通り考えられる
1 「MySQL client」もバージョンを”4.1”にアップグレードする。
*この場合は、PHPバージョンが”4.1”以上なら、設定ファイルでmysqlのpathを
指定してコンパイルするか、最新のPHPバージョンをインストールするなど慎重に
実施する必要がありそうです。
http://jp.php.net/manual/ja/ref.mysql.php
2 「MySQL server」の認証プロトコルを、バージョンが”4.0”以前の方式に変更して
「MySQL client」の認証に合わせる。
*この場合は、パスワードの作成時に旧の認証方式で作成すればよく、すぐ対応で
きるがセキュリティーは旧の水準になる。
http://dev.mysql.com/doc/mysql/ja/old-client.html
旧パスワードの作成方法
(ターミナル操作)
mysql> UPDATE user SET Password=OLD_PASSWORD('パスワード')
-> WHERE Host='host名' AND User='ユーザー名';
これで旧の認証方式でパスワードが発生する。
今回は2番目の、旧認証方式で「MySQL server」のパスワードを作成して対応すること
ができました。
投稿者 kazuo : 22:30
2005年07月02日
MovableTypeのDBにMysql を使ってみる
【MovableTypeのインストール】
MovableTypeのインストールと設定については、下記の公式サイトに詳しい説明があ
るのでここでは省略します。
http://www.movabletype.jp/
【DBI/DBDモジュールチェック】
MovableTypeでMysqlを使うためには、Perl と mysql のインターフェースドライバ、
DBI/DBDのモジュールを使用します。

MovableTypeの"mt-check.cgi”を実行した時にこのようなDBD::mysqlに関する表示
が出た時は、DBIとDBDをインストールする必要があります。
【DBI、DBDのダウンロード】
下記のサイトから最新のDBI、DBDをダウンロードする。
http://search.cpan.org/~timb/DBI-1.48/ 2005/6/29 現在”DBI-1.48”
http://search.cpan.org/dist/DBD-mysql/ 2005/6/29 現在”DBD-mysql-2.9008”
Documentsフォルダーなどに”DBI-1.48”と”DBD-mysql-2.9008”を解凍する。
(PerlのConfig.pmを修正)
Mac OS X10.3では、下記のディレクトリーにあるPerlのConfig.pmを修正しておく
必要があります。
/System/Library/Perl/5.8.1/darwin-thread-multi-2level/Config.pm
*830Line付近*
修正前: ld='MACOSX_DEPLOYMENT_TARGET=10.3 cc'
修正後: ld='env MACOSX_DEPLOYMENT_TARGET=10.3 cc'
”MACOSX_”の前に、”env”を挿入する。
【DBIのインストール】
DBIを先にインストール
(ターミナル操作)
1 cd /Documents/DBI-1.48/ ☆解凍したDBIのホルダーへディレクトリを
変更する
2 sudo perl Makefile.PL ☆root権限(sudo)で、"Makefile.PL"を実行する
Password: ☆パスワードを問い合わせてきたら、Macの
ログイン Passを入力
3 sudo make ☆コンパイルの実行
4 sudo make test ☆テスト実行
5 sudo make install ☆DBIのインストール開始
【DBDのインストール】
(ターミナル操作)
1 cd /Documents/DBD-mysql-2.9008/ ☆解凍したDBDのホルダーへディ
レクトリを変更する
2 sudo perl Makefile.PL
3 sudo make ☆DBDのコンパイル
4 sudo make test
5 sudo make install ☆DBDのインストール実行
"Makefile.PL”で下記ののようなエラーがでる場合は、"mysql_config"へのパスが通っ
てないのでパスを通す必要がある。
Can't exec "mysql_config": No such file or directory at Makefile.PL line 73.
ーーーーーーーーーーーー”パスはprofile”を修正するーーーーーーーーーーーーー
(ターミナル操作)
1 cd /private/etc/
2 vi profile
+++++++++++++++++++ 編集モード ++++++++++++++++++
3 i ☆インサートモード
4 カーソルを”PATH="/bin:/sbin:/usr/bin:/usr/sbin”の後に移動して
:/usr/local/mysql/bin とType In
☆”PATH=”へ”:/usr/local/mysql/bin”を挿入
------------------------------- profileの内容 ---------------------------
# System-wide .profile for sh(1)
PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/mysql/bin"
export PATH
[ -r /etc/bashrc ] && source /etc/bashrc
~
----------------------------------------------------------------------------
6 Esc ☆インサートモード終了
7 :wq ☆エディターで書き込んで終了する
+++++++++++++++++++++++++++++++++++++++++++++++
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
パスが通ったら、DBDのインストールを再度実行する。
DBI、DBDのインストールできたら、MovableTypeの"mt-check.cgi”を実行し
て、"DBD::mysql”が正常であることを確認する。
【MovableTypeの初期設定】
mt-load.cgiを起動してMovableTypeの初期設定を実行する。

初期設定の結果、このようなエラーが表示される時は、DBを事前に作成していない
、あるいわmysqlの 'DB名'、'ユーザー名'と、MovableTypeの”mt.cfg”の設定、また
は”mt-db-pass.cgi”の'パスワード'設定が一致していないなどが考えられます。
MovableTypeの設定を確認
(”mt.cfg”の設定)
ObjectDriver DBI::mysql
Database 'DB名'
DBUser 'ユーザー名'
#DBSocket /tmp/mysql.sock
#DBPort 'ポート番号'
#DBHost localhost
(”mt-db-pass.cgi”の設定)
'パスワード'
mysqlのMovableType初期 DB作成状況を確認する
1 mysql> create database DB; で作成した'DB名'と、”mt.cfg”のDatabase 'DB名'で設定
した'DB名'が同じか?
2 mysql> GRANT ALL ON DB.* TO 'ユーザー名'@localhost IDENTIFIED BY 'パスワード';
で作成した'ユーザー名'と、”mt.cfg”のDBUser 'ユーザー名'で設定した'ユーザー名'が同じか?
3 mysql> GRANT ALL ON DB.* TO 'ユーザー名'@localhost IDENTIFIED BY 'パスワード';
で作成した'パスワード'と、”mt-db-pass.cgi”で設定した'パスワード'が同じか?
今回は、"mysql_config"へのパスが通っていなかったこと、MovableTypeの DBを事前に
作成していなかったこと、それに”mt.cfg”のDBUser 'ユーザー名'が正確に設定されていなかった
事の3点を解決しすべて完了しました。
投稿者 kazuo : 18:44