刚从php5.2升级到5.4,mysql也同时升级了,用了几天都挺好的,今天早上突然phpmyadmin打不开了,提示错误
#2054 - The server requested authentication method umknown to the client
从网上搜索了一下解决方案,大概是说新版本php的mysql客户端使用的密码管理方式和以前有所不同 需要重新设置一下mysql的密码,因为以前的root密码已经不能使用,所以不能用传统的修改密码方式,而是直接重设密码:
1 首先修改mysql的配置文件my.cnf,设置任何用户登录都可以获得全部的权限
在[mysqld]的段中加上一句:skip-grant-tables 然后重启mysql
2 执行修改密码的sql:
UPDATE user SET Password = password ('new-password') WHERE User = 'root';
flush privileges;
3 再次重启mysql,这下应该就好了
参考:
http://www.apachefriends.org/f/viewtopic.php?f=16&t=52134&p=200290&hilit=mysql+can%27t+start&sid=7a0c4536981501981d4eb9e4450ef080#p200290
http://blog.sina.com.cn/s/blog_4fed8bc501009zrs.html