Mysql登陆时不走my.cnf配置里的socket问题

之前有采用源码进行mysql的安装,似乎并无此问题

在后来的某次二进制安装后,发现my.cnf设置的socket路径为/usr/local/mysql/mysql.sock

登陆mysql时会提示报错

[root@MainEnv ~]# mysql

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

必须采用指定S路径的方式方可登陆成功

[root@MainEnv ~]# mysql -S /usr/local/mysql/mysql.sock


这个原因是因为二进制安装的my.cnf里面没有[client]这个选项

如果想要默认通过自己设定的socket路径,而不采用-S的写法,必须要在my.cnf里面写上[client]的相关配置,并将socket路径写在[client]下方的配置里,否则登陆时,mysql只会去默认的/tmp下寻找mysql.sock


而源码安装的mysql似乎是有client选项的(仅凭印象,未继续考证),所以mysql源码安装时指定socket后,可以默认登陆

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容