低版本 Client 连接 MySQL 4.1 以上版本的口令问题

由 徐永久 发表于 2007年08月20日 21:35。

一般都用 tarball 编译的方式来安装 LAMP。一个 RHES 4.1 的 Red Hat 上安装的 MySQL 不完整,删除老的 4.1.20 版本后,安装了 MySQL 网站上的

MySQL-server-standard-4.1.22-0.rhel4.i386.rpm
MySQL-client-standard-4.1.22-0.rhel4.i386.rpm
MySQL-devel-standard-4.1.22-0.rhel4.i386.rpm

MySQL 工作了, 可是原来的 php-mysql 却不支持 PHP 了。
只好通过 rpmfind , 下载

php-mysql-4.3.11-2.8
php-pear-4.3.11-2.8
php-4.3.11-2.8

PHP 上有了 MySQL 支持,可是出现了如下错误:

Client does not support authentication protocol requested by server; consider upgrading MySQL client

解决的办法就是:

mysql> set PASSWORD FOR ‘miska’@’localhost’ = OLD_PASSWORD(‘muska’);

看来, Binary 或者 rpm 安装这些 这些 LAMP 包还确实麻烦。

==== 需要用到的一些 rpm 命令:
检查已经安装的 PHP 包:

#rpm -qa|grep -i php
php-mysql-4.3.11-2.8
php-pear-4.3.11-2.8
php-4.3.11-2.8

强制删除软件包: rpm -e –nodeps php-4.3.11-2.8
安装包: rpm -ivh php-mysql-4.3.11-2.8.i386.rpm

检查软件包包含的文件:
rpm -qil php-4.3.11-2.8

/etc/httpd/conf.d/php.conf
/etc/pear.conf
/etc/php.d
/etc/php.ini
/usr/bin/php
/usr/lib/httpd/modules/libphp4.so
/usr/lib/php4
/usr/share/doc/php-4.3.11
/var/lib/php
/var/lib/php/session