最近想测试项目,然后就装了个Linux的虚拟机,那么肯定是要部署环境,就在部署安装mysql的时候遇到文章标题这个问题,对小白的我来说一脸懵逼。上百度搜关于这个问题的解决办法,文章挺多,可以试了很多都解决不了。(你咋不问谷歌呢?心累,被墙了)让我倒腾半天的时间终于解决了。这种问题对大神来说不屑回答,可对于小白来说还真的头大。下面给出我的解决方法。
注意:在mysql5.7及以后安装都是有默认密码的。我安装的是mysql5.7,安装完之后,
1. 首先运行 cat/var/log/mysqld.log | more 去查看首次安装mysql默认分配给你的密码。
然后输入mysql -uroot -p 回车 输入在日志找的密码(在输入密码或者粘贴时是不会有星号的,所以不要奇怪)。
2.如果按上面的操作还是报错这个错,那么就暴力解决。步骤如下:
首先用命令行停止mysql服务,停止命令: service mysqld stop (mysql 启用停止命令这里不详说) , 然后修改mysql的配置文件(默认为 /etc/my.cnf),在[mysqld] 下添加一行:skip-grant-tables。
保存配置文件后,重启mysql服务:service mysqld restart。再次进入MySQL命令行 mysql -uroot -p,输入密码时直接回车(这儿容易误解,意思是不输入密码直接回车进入mysql),就会进入MySQL数据库了,这个时候按照常规流程修改root密码即可。
密码修改完毕后,再按照上面流程,删掉配置文件中的那行,并且重启MySQL服务,新密码就生效了。
注意:修改配置文件前可拷贝一份作为备份。重启MySQL服务前,最好断掉与MySQL关联的服务,以免数据丢失