如果你也像我一样,服务器配置的mysql密码忘记了,请参考。
服务器:*******
修改后密码:*******
修改MySQL的登录设置:vim /etc/my.cnf
(部分Linux没有安装了vim,其命令则改为vi /etc/my.cnf
)
在[mysqld]的段中加上一句:skip-grant-tables
保存并退出vi。
进入选择页面,输入E,编辑模式。
(进入到文本内,需要随便按一下键盘才可以输入,对小白的温馨提示)
输入完了以后,按下Esc,再输入: 接着输入wq 回车 ,结束。
这样我们就可以免密进入mysql
重启mysql:service mysqld restart
(这一步不能少,这是让my.cnf
的修改生效)
进入mysql:
mysql -u root
输入命令,回车,进入数据库。
进入mysql之后,切换数据库至mysql
use mysql;
随后,清空密码。
update user set authentication_string='' where user='root';
退出
exit; // quit; 也可以
屏蔽 skip-grant-tables:vim /etc/my.cnf,在skip-grant-tables前面添加
各条命令的输入详情及效果,(下次忘了,直接解注释!方便)
重启mysql。
service mysqld restart
(重要!!,这是让my.cnf的修改生效)
进入mysql。
mysql -u root
进入mysql后,切换数据库至mysql。
use mysql;
设置密码。
# 方式一:
ALTER USER 'root'@'%' IDENTIFIED BY '新密码' PASSWORD EXPIRE NEVER;
# 方式二:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '新密码';让密码马上生效。
FLUSH PRIVILEGES;(这个十分重要!)
最后用navicat测试一下新密码,完美解决。