您的位置:首页 > 运维架构 > Linux

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

2020-07-03 15:39 92 查看

以前用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


马上再去这个文件夹下查找是否有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的路径设置。另外安装的步骤可以参考

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: