相关链接:https://blog.csdn.net/gulang03/article/details/82790821
1.修改mysql配置文件,使其可以无密码登录
命令:sudo vim /etc/mysql/my.cnf
#配置文件根据自己数据库安装情况查找,5.7默认在/etc/mysql/mysql.conf.d/
在打开此文件后在文件[mysqld]下添加:skip-grant-tables
2.重启服务
命令:sudo service mysql restart
3.无密码登录
mysql -uroot -p
4.修改密码
第一步:进入数据库后,选择mysql这个数据库:use mysql;
第二步:
update user set password=password('123') where user='root';
# 5.6
update mysql.user set authentication_string=password('newpassword') where user='root';
#5.7,第一个命令已经无法修改密码了。用这个命名会报如下错误:ERROR 1054 (42S22): Unknown column ‘password’ in ‘field list’
或者使用
ALTER USER root IDETIFIED by "newpassword" #方式二
set password for 'root'@'localhost'='newpassword';方式三
原因:
*特别注意的一点是:新版的mysql数据库下的user表中已经没有Password字段了
而是将加密后的用户密码存储于authentication_string字段,所以报上面的那个错 误。
第三步:flush privileges;
第四步:exit;
5.最后还原配置文件
,重启mysql服务(sudo service mysql restart),再重新登录。