PHP5+MYSQL安装

Jah1919 2004-11-27 02:29:35
我在WIN2000下安装好了APACHE2.048+PHP5.0+MYSQL2.17(PHP、MYSQL都是解压版)
<? phpinfo(); ?>测试通过

但测试连接MYSQL时出现下列错误:
我的测试程序是:
<?
$link=mysql_connect('localhost','root','123456');
if (!$link) echo 'fail';
else echo 'success';
mysql_close();
?>

Warning: mysql_connect() [function.mysql-connect]: Client does not support authentication protocol requested by server; consider upgrading MySQL client in C:\www\testmysql.php on line 3
fail
Warning: mysql_close(): no MySQL-Link resource supplied in C:\www\testmysql.php on line 6
...全文
250 点赞 收藏 18
写回复
18 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
programdolt 2004-11-30
关注
回复
chen2008 2004-11-30
和上边那个是一样的道理
回复
chen2008 2004-11-30
一、 安装APACHE1.3.9(配置conf目录下的httpd.conf文件)
1.#BindAddress * 改为 BindAddress 127.0.0.1
#Servername new.host.name 改为 Servername localhost
2.让你的APACHE来支持PHP4. 加上下面这么几句:
ScriptAlias /php4/ \"C:/php4/\"
AddType application/x-httpd-php4 .php
AddType application/x-httpd-php4 .php3
AddType application/x-httpd-php4 .php4
Action application/x-httpd-php4 \"/php4/php.exe\"
3.设置Apache虚拟目录,加入以下行:
Alias /test/ \"c:/php3/test/\"
Alias /jjjj/ \"d:/timenet/\"
4.增加默认启动文档:
DirectoryIndex index.html
DirectoryIndex index.htm
DirectoryIndex index.php
DirectoryIndex index.php3
DirectoryIndex index.php4
5.测试文件info.php:
在浏览器中输入http://localhost/info.php
二、php4安装(php-4.0.2pl2-Win32.zip)
1. 将软件包解压到c:\\php4下。
2. 再将目录下的所有dll文件拷到c;\\winnt\\system32下,不要覆盖已有的dll文件。将目录下的php.exe和php.ini-dist两个文件拷到c:\\winnt下;
3. 将winnt\\php.ini-dist改名为php.ini,并找到;Windows Extensions项将
extension_dir = c:\\php4
extension=php_zlib.dll
extension =php_ldap.dll
extension =php_zlib.dll
extension =php_calendar.dll
extension =php_exif.dll
extension =php_ftp.dll
extension =php_mssql70.dll (这一项不要加,没有MSSQL7.0呀)
extension =php_imap.dll
有就去掉前面的分号,没有就自己加上。这个部分容易出现错误,是因为在php.ini文件中指定加载了无效的或者不存在的php_*.dll文件,加载这些错误信息还可能导致浏览器寻找不到服务器。
4. PHP.INI其他设置:
asp_tags = On ; 允许使用ASP风格的标记
upload_max_filesize = 2097152;上载文件的最大字节
(关于mysql的设置)
mysql.default_host = localhost;
mysql.default_user = root;
mysql.default_password= yourpasswd; 以上
(在您使用include函数时,只有被指定的目录下的文件才可以被包含)
include_path = \\path1;\\path2;\\path3....
(只有c:\\php4\\test目录下面的php文件才可以执行)
doc_root= c:\\php4\\test
三、MySQL安装(mysql-3.23.27-beta-win.zip)
1. 先安装mysql,默认安装路径为:c:\\mysql
2. 打开“运行”输入C:\\mysql\\bin\\mysqld-nt.exe –install
3. 打开“管理工具”->“服务”,找到“mysql”服务,启动它。重启windows2000。
回复
chen2008 2004-11-30
和php4是一样的啊
回复
cloudchen 2004-11-30
就是1楼的解决办法,你自己弄不来没办法,要么用mysqli
回复
Jah1919 2004-11-30
问题已解决,谢谢各位。
还是这句:
mysql> SET PASSWORD FOR
-> 'some_user'@'some_host' = OLD_PASSWORD('newpwd');
上周不知为何不行,有点说不清?!

接分了,每位有份。
回复
WQ_XC 2004-11-30
输入空格密码试试~
回复
Jah1919 2004-11-30
to jaexc(大飞):
你的其一方法我试过,但还是不行
其二方法我运行出错,不知具体原因
lsj(红枫) :
不好意思,我的错误:我的版本是4.17

问题还是没有解决
回复
tongyi2005 2004-11-28
专牛角尖.
回复
allkill 2004-11-28
检查一下你的SQL语句有没有错吧。我看出一处错误old-password != old_password

To hflsj(红枫)
那是他打错了,应该是4.17。
回复
hflsj 2004-11-27
楼主的MYSQL版本是2.17 太老了吧
回复
jaexc 2004-11-27
类似问题:
使用PHPMYADMIN时报错:
Client does not support authentication protocol requested
by server; consider upgrading MySQL client

官方的说法是

MySQL 4.1 and up uses an authentication protocol based on a password hashing algorithm that is incompatible with that used by older clients. .....




如果你升级mysql到4.1以上版本后遇到以上问题,请先确定你的mysql client 是4.1或者更高版本.(WINDOWS下有问题你就直接跳到下面看解决方法了,因为MYSQL 在WINDOWS是client和server一起装上了的)

请使用以下两种方法之一

其一:

mysql> SET PASSWORD FOR
-> 'some_user'@'some_host' = OLD_PASSWORD('newpwd');

其二:

mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd')
-> WHERE Host = 'some_host' AND User = 'some_user';
mysql> FLUSH PRIVILEGES;


官方连接:

http://dev.mysql.com/doc/mysql/en/Old_client.html
回复
Jah1919 2004-11-27
set password for root@'localhost' = OLD_PASSWORD('你的密码');
这个是好用,但我不知我为什么连不上
回复
ice_berg16 2004-11-27
set password for root@'localhost' = OLD_PASSWORD('你的密码');
这个是好用的。
回复
ddboy 2004-11-27
不用密码看看
回复
Jah1919 2004-11-27
我用过:
c:\mysql\bin>mysqladmin -u root -p password 123456 回车
Enter password:(输入旧密码)
改过ROOT的密码
回复
Jah1919 2004-11-27
老兄,报错
mysql> mysql -u root -p
-> 123456
-> update mysql.user set password=old-password('123456') where host='localho
st' and user='root';

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual tha
corresponds to your MySQL server version for the right syntax to use near 'mys
-u root -p
123456
update mysql.user set password=old-password('123456') wh' at line 1
回复
allkill 2004-11-27
安装完事以后运行启动mysql服务
运行mysql进入mysql控制台(mysql -u root -p)。
输入密码。
运行下面SQL语句:
UPDATE mysql.user SET Password = OLD_PASSWORD('你的密码') WHERE Host = 'localhost' AND User = 'root';
FLUSH PRIVILEGES;
SET PASSWORD FOR 'root'@'localhost' = OLD_PASSWORD('你的密码');
回复
相关推荐
发帖
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
帖子事件
创建了帖子
2004-11-27 02:29
社区公告
暂无公告