人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

【CentOS 3.7でphp-mysql】

CentOS3.7でMySQLServerの4.1をrpmパッケージでインストールしました。

まず、
http://dev.mysql.com/downloads/mysql/4.1.html
から
Red Hat Enterprise Linux 3 RPM (x86)の
MySQL-client-standard-4.1.21
MySQL-server-standard
MySQL-standard-debuginfo
MySQL-devel-standard
MySQL-shared-compat
MySQL-test-standard
をインストールしました。

次に、rikenからCentOS3.7用の
php-4.3.2-33
php-imap
php-ldap
php-devel
php-mysql
をインストールしました。

この状態だと、php-mysqlの接続クライアントが、MySQL3.x系時の旧パスワードハッシュアルゴリズムを使用するため、正常に接続できません。
※MyAdminだと「Client does not support authentication protocol requested by server; consider upgrading MySQL client」

これを解決するためには、
1.php-mysqlのバージョンを上げる。
2.--old-passwords を指定して mysqld を開始する。
3.OLD_PASSWORDでパスワードを変更する。
が挙げられます。

1の場合、ソースからインストールすれば解決可能ですが、rpmでの管理は譲れません。
2と3の方法はうまくいくのですが、できれば、php-mysqlのバージョンを上げたいと思っています。

phpをsrpmからリビルドしてみましたが、うまくいきませんでした。

解決方法があればご教授願います。

●質問者: PEPOTA
●カテゴリ:コンピュータ インターネット
✍キーワード:CentOS Client DOES IMAP LDAP
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● k12u
●27ポイント

RPMで管理したいのとphp-mysqlを更新するのを両立するには

SRPMからビルドするのがいいでしょう。

どのようにうまくいかなかったか書けませんか。

◎質問者からの返答

そうですよね。

もう一度、リビルドして、その際のログを

後で記述します。

----------------

今日、昨日と同じ条件でsrpmをリビルドしたのですが、

なぜかうまくいきました。

で、一旦phpを消して、

/usr/src/redhat/RPMS/i386/に作成されたphpのrpmを利用して、インストールしました。

結果は。。。

rikenで配布されているrpmと同じ結果でした。

(old passwordじゃないと使用できない)


2 ● k12u
●27ポイント

もう一案。rikenのftpサイトにある

/Linux/centos/4.3/centosplus/i386/RPMS/の

php-mysql-5.0.4-5.centos4.i386.rpm

と依存するRPMを入れるという方法もいいかもしれません。

/Linux/centos/4.3/centosplus/Readme.txt

も参考に。

#操作自体は自己責任でお願いします。

◎質問者からの返答

この方法もあるなと思ったのですが、

最終手段かなとも思いました。

ありがとうございます。


3 ● えるふん
●26ポイント

--with-mysqlを指定していると思いますが,

PHP 4の場合そのままだとPHPにバンドルされたlibmysqlclientが必ず使用されるので,別途インストールされてるMySQLのバージョンがいかなるものでも変化は出てこないと思います

#PHP 5はこの限りではありません

--with-mysql=<DIR>でディレクトリを指定することで,そちらのMySQL関連のインクルードファイルとライブラリを見に行くことになるので,

一度--with-mysql=/usrなどとしてみてはいかがでしょうか?

#mysql.comのMySQLも/usr以下(/usr/include/,/usr/lib/)にインストールしたはずなので

◎質問者からの返答

なるほど!

試してみます。

-------------------------

途中でエラーが出ました。

config.status: creating php4.spec

config.status: creating main/build-defs.h

config.status: creating scripts/phpize

config.status: creating scripts/php-config

config.status: creating sapi/cli/php.1

config.status: creating main/php_config.h

config.status: executing default commands

+ --with-mysql=/usr

/var/tmp/rpm-tmp.89921: line 139: --with-mysql=/usr: No such file or directory

error: Bad exit status from /var/tmp/rpm-tmp.89921 (%build)


RPM build errors:

Bad exit status from /var/tmp/rpm-tmp.89921 (%build)

/usrに無いという感じなので、

ディレクトリを変更して試してみます。

----------------------------------

/usr

/usr/lib

/usr/lib/mysql

/var

など試しましたが、結果は同じでした。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ