@centos7下mysql8.0连接报mysql.sock(2)错误的解决方法

以前用mysql的时候都是用的docker,简单暴力,这次想抛开docker看看mysql8.0.19的安装,此篇只是用于记录错误及解决过程,欢迎交流。
当我在centos7下/usr/local/mysql目录下安装完mysql8.0.19
链接: link
添加权限组,用户等,配置好环境变量后尝试连接时报以下错误
在这里插入图片描述
1、这个时候开始查是否在/etc/my.cnf 下配置的socket路径下是否存在mysql.sock文件

cat /etc/my.cnf

原来是在这个tmp文件夹下呀
马上再去这个文件夹下查找是否有mysql.sock文件,发现这个mysql.sock文件是存在的

ll /usr/local/mysql/tmp

在这里插入图片描述
这里要注意了,有些小伙伴忘了给tmp文件夹权限,导致这里没有mysql.sock文件,需要给其加上权限

chmod 777  /usr/local/mysql/tmp	

这个文件夹有了此权限后在mysql启动时会自动生成mysql.sock文件
2、这个时候有点纳闷了,sock文件有了为什么还是连接不上呢,可能是my.cnf的权限不够导致,尝试一下

chmod 777 /etc/my.cnf

在这里插入图片描述
更改my.cnf权限后重启mysql就好了,但是有个很大的隐患就是所有用户都能更改my.cnf了,隐患很大,所以这不是正常的解决办法,重新给其755的权限

chmod 755 /etc/my.cnf

在这里插入图片描述
这个时候发现又连接不上了只好想别的办法了
3、应该还是my.cnf配置有问题,需要加上客户端的配置[mysql],于是试验一下
在这里插入图片描述
于是加上了这行的socket的参数设置,再次重启登录试试看
在这里插入图片描述
发现是可用的
4、后面看到一篇文章说是只需要添加软连接就可以了,把第三种方法里的my.cnf还原,再次测试一下

ln -s /usr/local/mysql/tmp/mysql.sock /tmp/mysql.sock

在这里插入图片描述
现在发现这个也有用
end…

总结:
sock连接不上可以先查看是否有sock文件,没有的话注意更改定义的mysql.sock所在目录的权限,mysql的权限等,有的话,检查my.cng权限,my.cnf的配置[mysqld] 、[mysql]等socket的路径设置。另外安装的步骤可以参考

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值