【问题出现步骤】
1.在Ubuntu终端安装好MySQL;
2.输入命令:mysql -u root -p 按【Enter】键;
3.不输入密码直接按【Enter】键就进入了mysql;
4.后续因界面卡顿,直接将虚拟机重启了,后续再次输入登录mysql的命令就一直登录不上,提示1045错误,修改密码后仍然是1045错误。
【解决方法】
把空用户名给删掉,再修改密码就可以正常登录了。看其他博主说原因应该是:“这个原理应该是有空的用户名把你本来的改完的密码占用了 从而导致你改完后输入明明已经正确改完的密码后还是报1045错误”。个人疑问:不太明白为什么会有空的用户名。
【解决步骤】
1.使用vi编辑器进入mysql的配置文件mysqld.cnf(注意权限问题,最好用root用户)
2.进入编辑页面,输入i进入插入模式,移动光标找到[mysqld],在其内容下方输入命令:skip-grant-tables 点击键盘【Esc】退出命令模式,输入:wq保存退出
3.退出后,输入命令 service mysql restart 重启mysql
4.重启后,输入mysql可直接进入
5.输入use mysql
6.删除空的用户(备注:修改密码后仍报1045错误就可以尝试这一步)
7.修改密码,MySQL8输入的命令 update user set authentication_string=‘123456’ where user=‘root’;
8.修改成功后退出,重启mysql
9.再次进入mysql的配置文件mysqld.cnf,将skip-grant-tables隐藏掉或删除,然后保存退出,就可以试一下再次登录mysql