mysql启动报错 Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
mysql.sock 文件的作用:
因为mysql的连接有两种方式TCP/IP和socket, 其中mysql.sock起到的作用就是当mysql的主机和客户机在同一host(物理服务器)上的时候,使用unix domain socket做为通讯协议的载体,速度比tcp快。即 是用于socket连接的文件。
无须定义连接host的具体IP得,只要为空或localhost就可以。 在此种情况下,即使你改变mysql的外部port也是一样可能正常连接。 因为你在my.ini中或my.cnf中改变端口后,mysql.sock是随每一次 mysql server启动生成的。已经根据你在更改完my.cnf后重启mysql时重新生成了一次,信息已跟着变更。
如果mysql.sock文件不见了,可以试着重启mysql服务,会自动生成。
用/etc/rc.d/init.d/mysql restart 或者service mysql restart 重启服务了
如果还不行.就先
#ps -aux|grep mysql
找mysql的进程.
#kill mysql进程号
确定全部kill光
再/etc/rc.d/init.d/mysql restart 或者service mysql restart 重启服务
提示:如果重启失败或者说生成mysql.sock文件失败,有可能是mysql所在磁盘内存占用满了,清理下磁盘空间。(我遇到了这种情况)