centos7下启动MySQL报错ERROR 2002 (HY000)的解决办法

时间:2024-05-21 19:41:19

      最近在安装新的PHP开发环境,vagrant+virtualBox+centos7下安装LNMP。遇到了无数多的坑,焦头烂额。。。
      记录一下一些很奇怪的解决办法吧。

之前安装了msql8.0.11,安装参考博客地址:

https://www.cnblogs.com/hujiapeng/p/9124298.html

安装完成后,可以用初始密码进入MySQL,也可以执行查询版本等操作。今天用命令:systemctl start mysql.service启动MySQL服务失败,报错是:Failed to start mysql.service: Unit not found.
之后我打算换种方式启动试试,于是 find / -name mysql找到了虚拟机中所有的mysql,直接在bin目录下的mysql启动,接下来的操作如下图:


centos7下启动MySQL报错ERROR 2002 (HY000)的解决办法
报出的错误是ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)
很自然我就去网上查这个错误怎么解决,各路大神给出的方法都试了一遍:删除mysql文件下的ib_logfile*文件再启动MySQL,给my.cnf文件更名位my.cnf_bak,编辑MySQL配置文件等,都没解决,重启服务都是2002错误,最后还要全改回来。我干脆直接用进入mysql的语句试了试:mysql -u root -p  执行后让我输入密码,

centos7下启动MySQL报错ERROR 2002 (HY000)的解决办法
说明mysql可能已经在运行,然后查询MySQL的状态:

centos7下启动MySQL报错ERROR 2002 (HY000)的解决办法
这里有一句please read "Security" section of the manual to find out how to run mysqld as root!提醒了我,我从安装后还没有改初始密码!!
接下来重置初始密码,参考博客如:

https://blog.****.net/xinpengfei521/article/details/80400142

修改完之后问题解决。

另外,如果启动mysql服务实在不能成功,试试这个命令:# /usr/sbin/mysqld start或者# service mysqld restart,特有效。输入命令的目录就在根目录下,第一个命令根据自己的情况修改。
centos7下启动MySQL报错ERROR 2002 (HY000)的解决办法