场景说明:
安装的MySql版本是5.7.27免安装版本,参考的安装教程戳这里。
安装完成之后,也正常启动了,但是通过命令行:mysql -uroot -p 登录的时候,死活都是报:
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
网上的解决方法试了很多,比如这里,比如这里。这两个博客写的都很好,在一定程度可能能解决这个问题,但是没有解决我的问题,我尝试了都不行,不管怎样都是报上面的错。
可以确定几点:
1.mysql服务已经正常启动了,因为在windows的服务已经可以正常看到服务
2.肯定不是密码输入错误
3.按照博客中说的方法都试了,都不行
解决方法:
出现这种情况,我在想是不是不允许通过localhost登录,或者本地host设置问题,根本就没有把127.0.0.1和localhost进行关联呢?抱着尝试的态度,在命令行敲入如下登录命令:
mysql -h 127.0.0.1 -P 3307 -u root -p
回车,让输入密码,输入密码后,发现提示:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
看到这个,更加可以确定mysql是正常启动的。 这已经距离成功很近了,重新输入mysql -h 127.0.0.1 -P 3307 -u root -p回车,连续回车,不输入密码,竟然进来了!!
进入之后,通过如下命令重置密码
set password=password('root');
然后退出,再登录:mysql -h 127.0.0.1 -P 3307 -uroot -proot 回车,扥估成功!