关于 MySQL 的 mysql.sock 文件作用,参看 :

【MySQL】关于 mysql.sock

https://www.jianshu.com/p/e40fada1cb73

 

如果是用官方rpm安装或者拉取的官方docker镜像起的MySQL服务,mysql.sock的路径是 /var/lib/mysql/mysql.sock

 

如果是下载的官方MySQL二进制安装包或者编译安装(编译时使用的默认值,没有特意指定mysql.sockl路径),那么mysql.sock的路径是 /tmp/mysql.sock 

 

如果编译安装时,想特意指定mysql.sockl路径 ,可以使用如下编译选项:

-DMYSQL_UNIX_ADDR=/path/to/mysql.sock 

【MySQL】关于编译的MySQL的mysql.sock路径

并且若果路径原本不存在,启动MySQL之前你需要手动创建,主要目录的属主属组,使得MySQL启动时有写入权限!

 

一般地,如果我们不在MySQL的配置文件 my.cnf中配置 socket 文件路径,启动时,不会有什么问题,MySQL Server 会将mysql.sock 文件生成在相应的目录。

如果本来MySQL启动时,mysql.sock 的生成路径应该是A,你却在my.cnf里写了B,那么对不起,MySQL会启动失败或者连接报错:

【MySQL】关于编译的MySQL的mysql.sock路径

所以,my.cnf 中要么不写,使用默认值,要写就写正确,原则是要能对应上。

【MySQL】关于编译的MySQL的mysql.sock路径

【MySQL】关于编译的MySQL的mysql.sock路径

 

使用MySQL客户端命令连接MySQL Server时指定socket文件的两种方式:

#  mysql  --socket=/path/to/mysql.sock   -u  User   -p"Password"

#  mysql   -S  /path/to/mysql.sock    -u  User   -p"Password"

 

 

参考

 

关于 mysql.sock

https://www.jianshu.com/p/e40fada1cb73

 

关于MySQL配置文件路径问题

https://blog.csdn.net/michaelwoshi/article/details/104572225

 

Can't connect to local MySQL server through socket

https://www.cnblogs.com/f-ck-need-u/p/9098664.html

相关文章:

  • 2021-06-20
  • 2022-01-02
  • 2022-12-23
  • 2021-11-27
  • 2021-07-17
  • 2021-09-10
  • 2021-12-14
  • 2022-12-23
猜你喜欢
  • 2021-12-07
  • 2021-05-31
  • 2021-09-02
  • 2021-11-30
  • 2021-12-05
  • 2021-07-15
  • 2021-12-30
相关资源
相似解决方案