转自:http://blog.csdn.net/u010603691/article/details/50379282
新安装的MySQL5.7,登录时提示密码错误,安装的时候并没有更改密码,后来通过免密码登录的方式更改密码,输入update mysql.user set password=password('root') where user='root'时提示ERROR 1054 (42S22): Unknown column 'password' in 'field list',原来是mysql数据库下已经没有password这个字段了,password字段改成了
authentication_string
所以更改语句替换为update MySQL.user set authentication_string=password('root') where user='root' ;即可
我的系统版本如下:
完整的更改MySQL密码的方式如下:
1、vim /etc/my.cnf 加入skip-grant-tables
2、重启MySQL, /etc/init.d/mysqld restart
3、终端输入 mysql 直接登录MySQL数据库,然后use mysql
4、update mysql.user set authentication_string=password('root') where user='root' ;
A.update user set password=password("123456") where user="root";//该接口经测试可用
mysql5.7更改密码应该采用命令 ALTER USER
'root'
@
'localhost'
IDENTIFIED BY
'********'其中密码的命名规则有所改变,详见
http://blog.csdn.net/u010603691/article/details/50541979
5、编辑my.cnf文件删掉skip-grant-tables 这一行,然后重启MySQL,/etc/init.d/mysqld restart,否则MySQL仍能免密码登录
6、mysql -u root -p
然后输入密码即可登录MySQL数据库