centos7.1 之mysql.sock 找不到问题

本文分享了一位博主在安装MySQL 5.5.28过程中遇到的sock文件缺失问题及解决方案。通过调整my.cnf配置文件中的sock路径并重启mysqld服务,最终解决了客户端无法连接本地MySQL服务器的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天装mysql5.5.28 ,完成后,启动它mysqld后,客户端链接,结果报下如下错误。

我下意识的去tmp下查,果然没有mysql.sock文件,也没有 mysqld.sock,然后以我经验就重启mysqld吧,中间重启不下了10次,但它还未给我自动生成这个mysql.sock文件。

 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysqld.sock' (2)

然后,各种百度,各种试。最后百度到mysql客户端与mysql server 通信有两种模式,一种是tcp,一种是sock了。而sock比TCP要快得多(这个没有验证过,网上说的)。

那这两种模式有什么用呢?tcp就是我们的常见的IP访问mysql server,sock 则是localhost 访问 mysql server(客户端与mysql server 同在一台物理机时,一般用这种)。

现在少了sock文件,自然直接敲mysql 去访问 server,肯定会报错了。后来我试下了这个加主机名,命令如下

mysql -uroot -h 127.0.0.1 -p123456

果然成功进入mysql 了。

但我不甘心这个问题解决不了。

于是继续百度,百度到,即然在tmp下生成不了mysql.sock,那就改my.cnf 配置文件里的sock路径呀,然后重新启去下,说不准就可以了呢。

报着试一试的心态,改了my.cnf里的sock 路径,让基指到/var/lib/mysql/下。

然后重新启动mysqld ,果不其然。可以看到mysqld.sock的文件了。

试着mysql -uroot -p 123456也可以了。


但大家注意到没,生成的文件是mysqld.sock,而不是mysql.sock,多了个d。

不知道是不是我是centos 7.1 版本的原因。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值