风云小站 » 『 求助专区 』 » 登陆数据库出错...(十分感谢会员:hogzh)
本页主题: 登陆数据库出错...(十分感谢会员:hogzh) 打印 | 加为IE收藏 | 复制链接 | 收藏主题 | 上一主题 | 下一主题

chenyongyun
级别: 初级会员


精华: 0
发帖: 103
威望: 167 点
风云币: 5696 元
专家分: 0 分
在线时间:51(小时)
注册时间:2006-10-01
最后登录:2008-04-24

 登陆数据库出错...(十分感谢会员:hogzh)

管理提醒:
本帖被 水蜜桃 执行锁定操作(2008-03-04)
还是关于PHP+Apache+MySQL的架设问题....前面一切都顺利通过,但到了http://localhost/phpMyAdmin/ 这一步,输入用户名root与密码后就出现出错提示...:phpMyAdmin - error
#1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client

如图:


百度了一下解决方法:(刚好我的MySQL 版本为 4.12)
Quote:
出现这种问题也只有在MYSQL4.1.x以上版本,用4.0.x就没问题了

原因是因为你使用的mysql服务器版本中使用了新的密码验证机制,这需要客户端的版本要在4.0以上,原来的密码函数被改为old_password ();,这样使用password()生成的密码在旧的版本上的客户端就不好使了,而PHP中的MYSQL客户端都是3.23的(当然,mysqli的扩展除外),问题就在这了。

目前已知解决方法:

1、进入命令行下,转到MYSQL目录的BIN目录下,进入MYSQL命令行模式:
        例:d:\mysql\bin>mysql -uroot -p123        (用户root,密码123)
2、输入命令:
        mysql>set password for 'root'@'localhost'=old_password('123');        (注意冒号不能少)
3、退入MYSQL命令行:
        mysql>\q



按照上面的步骤做后再重启相关服务,仍然出错....这是为什么?难道真的要换MySQL版本?
[ 此贴被chenyongyun在2008-03-04 19:49重新编辑 ]
顶端 Posted: 2008-03-04 08:48 | [楼 主]
jianxin
助人为乐奖
级别: 中级会员


精华: 0
发帖: 785
威望: 366 点
风云币: 2842 元
专家分: 0 分
论坛群: 啦啦大軍
在线时间:178(小时)
注册时间:2007-05-29
最后登录:2008-04-29

 

换个mtsql的版本或者phpamydmin的版本
顶端 Posted: 2008-03-04 10:45 | 1 楼
chenyongyun
级别: 初级会员


精华: 0
发帖: 103
威望: 167 点
风云币: 5696 元
专家分: 0 分
在线时间:51(小时)
注册时间:2006-10-01
最后登录:2008-04-24

 

Quote:
引用第1楼jianxin于2008-03-04 10:45发表的  :
换个mtsql的版本或者phpamydmin的版本


中午下载了个mysql 4.0.26。。。安装时根本连密码都不要,应不是这样的吧?或者哪位朋友提供一下mysql 4.0.x的可下载地址。。。谢谢!
顶端 Posted: 2008-03-04 16:03 | 2 楼
freelive
独自等待,悄悄离开~
级别: 风云精英


精华: 1
发帖: 1003
威望: 554 点
风云币: 148183 元
专家分: 5 分
在线时间:105(小时)
注册时间:2007-12-31
最后登录:2008-04-27

 

我也觉得可能是版本之间的不兼容的问题。

帮你找到一些,***还比较快,试一下吧~

系列也比较多,自己选择吧~


其实,.....

下载网页:

http://download.chinaunix.net/download/0008000/7159.shtml

本帖最近评分记录:
  • 风云币:+5(水蜜桃) 您的贴子很精彩!希望很
  • 风云墙-荣誉会员

    其实一切与我无关~
    顶端 Posted: 2008-03-04 17:26 | 3 楼
    chenyongyun
    级别: 初级会员


    精华: 0
    发帖: 103
    威望: 167 点
    风云币: 5696 元
    专家分: 0 分
    在线时间:51(小时)
    注册时间:2006-10-01
    最后登录:2008-04-24

     

    Quote:
    引用第3楼freelive于2008-03-04 17:26发表的  :
    我也觉得可能是版本之间的不兼容的问题。

    帮你找到一些,***还比较快,试一下吧~

    系列也比较多,自己选择吧~
    .......



    谢谢...偶也是找到的这里下载...但下载了不能用啊.你提供的这些 4.0.x的下载了解压连个安装文件都没有的,就解压到相应的文件夹后就能用?事实证明还是用不了....
    顶端 Posted: 2008-03-04 18:15 | 4 楼
    hogzh
    级别: 新手上路


    精华: 0
    发帖: 92
    威望: 67 点
    风云币: 2835 元
    专家分: 0 分
    在线时间:69(小时)
    注册时间:2007-12-31
    最后登录:2008-04-14

     

    Quote:
    引用第2楼chenyongyun于2008-03-04 16:03发表的  :


    中午下载了个mysql 4.0.26。。。安装时根本连密码都不要,应不是这样的吧?或者哪位朋友提供一下mysql 4.0.x的可下载地址。。。谢谢!


    晕~~~这里竟然是在研究PHP构建环境,累啊!!!!!!!!!!!!!!!!!!

    顶楼问题可以:

    1 请在开始菜单->程序->mysql  选择第一项

    2 输入你安装mysql时设定的root用户的口令

    3 shell> mysql

    4 按照下面的格式输入命令,注意要替换括号中的内容,以你的mysql的实际情况进行替换)

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

    比如可以写成这样:

    mysql> update mysql.user SET Password = OLD_PASSWORD('123456')  where Host = 'localhost' AND User = 'root' ;
    mysql> FLUSH PRIVILEGES;


    重启mysql,问题应该能够得到解决!

    最后,建议你下载集成安装包,有2003IIS和XP两种环境下的,看你需要了,先熟悉再配置吧。。。。。。。。。。。。。。。。。。
    本帖最近评分记录:
  • 风云币:+5(水蜜桃) 您的贴子很精彩!希望很
  • 顶端 Posted: 2008-03-04 18:16 | 5 楼
    hogzh
    级别: 新手上路


    精华: 0
    发帖: 92
    威望: 67 点
    风云币: 2835 元
    专家分: 0 分
    在线时间:69(小时)
    注册时间:2007-12-31
    最后登录:2008-04-14

     

    看这些太累,继续下潜.................如果还不能解决,上来再说.........................................
    顶端 Posted: 2008-03-04 18:19 | 6 楼
    chenyongyun
    级别: 初级会员


    精华: 0
    发帖: 103
    威望: 167 点
    风云币: 5696 元
    专家分: 0 分
    在线时间:51(小时)
    注册时间:2006-10-01
    最后登录:2008-04-24

     

    Quote:
    引用第5楼hogzh于2008-03-04 18:16发表的  :


    晕~~~这里竟然是在研究PHP构建环境,累啊!!!!!!!!!!!!!!!!!!

    顶楼问题可以:
    .......



    谢谢你的精彩回复.我等下回去试试,其实偶也只是没事来学学...我已经把mysql 4.1.x卸载了,等下回去再装上...
    顶端 Posted: 2008-03-04 18:43 | 7 楼
    chenyongyun
    级别: 初级会员


    精华: 0
    发帖: 103
    威望: 167 点
    风云币: 5696 元
    专家分: 0 分
    在线时间:51(小时)
    注册时间:2006-10-01
    最后登录:2008-04-24

     

    Quote:

    1 请在开始菜单->程序->mysql  选择第一项

    2 输入你安装mysql时设定的root用户的口令

    3 shell> mysql

    4 按照下面的格式输入命令,注意要替换括号中的内容,以你的mysql的实际情况进行替换)

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

    比如可以写成这样:

    mysql> update mysql.user SET Password = OLD_PASSWORD('123456')  where Host = 'localhost' AND User = 'root' ;
    mysql> FLUSH PRIVILEGES;

    重启mysql,问题应该能够得到解决!


    实在太感谢了,问题解决了!只是不明白你为何要写第三步(3 shell> mysql ),输入密码后就显示的mysql>而不是shell>....还有就是那两行的结尾都是分号(;)....论坛显示原因让偶老打成冒号...
    顶端 Posted: 2008-03-04 19:47 | 8 楼
    chenyongyun
    级别: 初级会员


    精华: 0
    发帖: 103
    威望: 167 点
    风云币: 5696 元
    专家分: 0 分
    在线时间:51(小时)
    注册时间:2006-10-01
    最后登录:2008-04-24

     

    出现这种情况的原因是什么?
    顶端 Posted: 2008-03-04 19:54 | 9 楼
    帖子浏览记录 版块浏览记录
    风云小站 » 『 求助专区 』
    感谢,曾经的版主
    Total 0.011478(s) query 6, Time now is:09-20 01:03, Gzip enabled 渝ICP备20004412号-1

    Powered by PHPWind v6.3.2 Certificate Code © 2003-07 PHPWind.com Corporation
    Skin by Chen Bo