MySQL 4.0.21 (その2)
いろいろ試行錯誤した結果、Web共有(Apache) が起動しなくなる原因はおおよそ見当ついた。
MySQL を Ver.3.23.55 から Ver.4.0.21 へアップグレードすると Web共有(Apache) が起動しなくなってしまったので、慌てて元にもどしてある。本来独立なはずの Apache と MySQL に関連ができてしまった原因は、おそらくPHPだろうと見当はつけていたのだが、これがアタリだった。
MySQL を Ver.4.0.21 へアップグレードしても、Apache側の設定 "/etc/httpd/httpd.conf" で PHPモジュール(動的リンクライブラリ libphp4.so)を取り込まないような設定にすると何ら問題なく起動する。よって Apache が起動する際 PHPモジュールを読み込み、さらにPHPモジュールは MySQLの動的リンクライブラリと結合されているので MySQLの動的リンクライブラリを読み込もうとする。しかし MySQLのアップグレードにより MySQLの動的リンクライブラリのモジュール構造やエントリ名が変わっている(非互換が生じている)ためにリンクエラーが発生し、Apache起動に失敗しているというのが原因だろう。
この問題を解消するには MySQL をアップグレードする際、同時に PHP も作り直す必要がある。また MySQL を Ver.3系から Ver.4系に上げる際にはデータベースの構造をコンバートする必要もあるのだが、そのためのツールが Perlで記述されており、Perl から MySQLデータベースにアクセスするため DBD::MySQL拡張モジュールが必要になる。よってこれも作り直す必要が生じる。以上、かなり大掛かりな作業になる事がわかった。
必要な作業内容はおおよそ把握できて、MySQLアップグレードとPHPの再ビルドは問題なくできた。しかし、Perlの DBD::MySQL拡張モジュールのビルドでつまずいている。もう暫く格闘が続きそうだ(遊べそうだ、と言うべきか?^_^;)
|