自宅の pc のVistaにはIISを実装したが、netbookについてきたXP Home Editionにはwampserverでアパッチ・PHP・MySQLを導入し、 PHP fileなどのエディターにはちょっと重いがNetBeans6.8をインストール。こちらのマシンのほうは、OS以外は割りとMS色を払拭している (ただしOffice Suiteは仕事の関係上、どうしても必要なのでXPにとどまっている。 この制約がなければubuntuにするところだ)
Wamp=W)indows A)pache M)ySQL P)HP server
WampServerをインストールするとタスクトレーにアイコンが出来、クリックするとサーバーの起動・停止などが簡単にできるような構造になっている。また、データベース管理にはphpmyadminが組み込まれていて便利。で、http://localhost/phpmyadminをブラウザーで開いてい見ると、今回も2点ほど警告が出たが、IISの導入とは種類が違った。
1)rootのパスワードが設定されていません。危険です。
2)リンクテーブルのサポート機能が、無効になっています。
というもの。 早速修正してみよう。
1) password の入力はphpmyadminの画面でPreviledgeのタブを選ぶとuser listが出てくるのでここで修正した。新しいパスワードを入力して、セーブしてこれで終わり、と思ったら、途端にphpmyadminからMySQLに接続できません、パスワード無しの設定になってます、と文句を言われた。 なるほど。MySQLのパスワードは変更したが、phpmyadmin自体のMySQLアクセスの設定がパスワード無しのままになってしまっている。のでデータベースを開くことができなくなったわけ。
これを解決するためには config.inc.phpをエディターで開き、パスワードを設定する行を探し出す。 設定したパスワードがmyPwdだった場合、
$cfg[‘Servers’][$i][‘password’] = ”;
こうなっていたのを
$cfg[‘Servers’][$i][‘password’] = ‘myPwd’;
こうすることによって解決!
2) config.ing.phpにはコメントアウトされた行が多々あって、それらの行でリンクテーブルを処理するために関係のあるところを有効にしていけばよいわけだが その前にリンクテーブル用のデータベースを作っておく必要がある。
a) phpmyadmin の Import tabから ./script/create_tables.sqlをインポートしクエリを実行。するとphpmyadminというデータベースが出来上がる。 これを確認後、
b) config.inc.phpで以下の行を有効化してセーブ。(コメント[/*]をはずす)
$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][‘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’;
参考リンク
http://www.wampserver.com/phorum/read.php?2,63233,63241
思うのだが、問題が出た場合は単純にググるのではなく、まずは製品のサイトに行ってそこでサーチをかけるのが解決法発見の早道のようだ。 今回のものは割りと煩雑に起こっているらしく、単にググると解決法まで載っていない、ノイズのような記事が沢山引っかかってしまう。