socket 文件 (.sock
) 通常是临时文件。
- MySQL 的 socket 文件是临时文件,只在服务运行时有效。
- 可通过配置文件更改 socket 文件的存放路径,常见路径如
/tmp/mysql.sock
或指定自定义目录。 - 如果连接出现问题,可能需要检查 MySQL 服务状态或路径配置是否正确。
什么是 socket 文件?
- 在 MySQL 中,socket 文件 用于本地客户端与 MySQL 服务进程之间的通信。
- 默认情况下,这个文件会在 MySQL 启动时创建,并在 MySQL 服务关闭时自动删除。
- 文件路径 通常类似于
/tmp/mysql.sock
或用户指定的路径。
socket 文件特点
- 临时性:MySQL 服务运行时存在,关闭后自动删除。
- 作用:为本地客户端提供高效的进程间通信(IPC),性能通常比 TCP 连接更快。
- 可配置 :
-
可在 MySQL 配置文件中通过
socket
参数自定义路径。 -
示例配置:
ini[mysqld] socket=/usr/local/src/mysql_demo/master_replica/mysql.sock [client] socket=/usr/local/src/mysql_demo/master_replica/mysql.sock
-
注意事项
-
如果 socket 文件意外丢失或未正确删除,可能导致客户端连接错误,比如:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'
解决方法 :
-
检查 MySQL 服务是否正在运行。
-
如果 socket 文件路径自定义,确保客户端使用正确的配置文件。
-
重启 MySQL 服务以重新生成 socket 文件:
bashsudo systemctl restart mysql
-