首页 » PHP教程 » phpmysqlsock技巧_mysqlsock 文件详解

phpmysqlsock技巧_mysqlsock 文件详解

访客 2024-12-18 0

扫一扫用手机浏览

文章目录 [+]

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

叨教mysql.sock 这个文件到底起什么浸染?

phpmysqlsock技巧_mysqlsock 文件详解

如何避免发生如此缺点?

phpmysqlsock技巧_mysqlsock 文件详解
(图片来自网络侵删)

答案一、

这个mysql.sock该当是mysql的主机和客户机在同一host(物理做事器)上的时候,利用unix domain socket做为通讯协议的载体,它比tcp快。
常日碰着这个问题的缘故原由便是你的mysql server没运行起来。

看看你的 /tmp/mysql.sock 这个文件存在否?正常情形下它该当在那里的,或者用 netstat 看当作果中是否有 Active UNIX domain sockets

答案二、

这个文件是用于socket连接的文件。
也便是只有你的守护进程启动起来这个文件才存在。
但是你的mysql程序(这个程序是客户端,做事器端时mysqld)可以选择是否利用mysql.sock文件来连接(由于这个方法只适宜在Unix主机上面连接本地的mysqld),对付非本地的任何类型的主机。
这些在MySQL的手册(包括晏子翻译的中文版本,覆盖3.23/4.0版本)都有解释。
只要看看就可以明白。
前面朋友说不能连接,最大可能便是mysqld的这个守护进程没有启动。

答案三、

Mysql有两种连接办法:(1)TCP/IP(2)socket对mysql.sock来说,其浸染是 mysql客户端程序 mysql与 mysql做事器端程序 mysqlserver处于同一台机器,发起本地连接时可用 。
例如你无须定义连接host的详细IP得,只要为空或localhost就可以。
在此种情形下,纵然你改变mysql的外部port也是一样可能正常连接。
由于 你在my.ini中或my.cnf中改变端口后,mysql.sock是随每一次 mysql server启动天生的。
已经根据你在变动完my.cnf后重启mysql时重新天生了一次,信息已随着变更。
那么对付外部连接,必须是要变更port才能连接的。

找不到 mysql.sock 的处理方法!

涌现以下的信息:Got an error: Connection error: Can't connect to local MySQL server throughsocket '/var/lib/mysql/mysql.sock'mysql.sock 溘然消逝算是常见的问题。
如果是第一次安装MySQL后运行时涌现,那只要找出 mysql.sock 在哪里就可以了。

以上的信息表明,mysql.sock该当是在 /var/lib/mysql/ 下 ,如果你找了没找到

就:

#locate mysql.sock

就会出来了,接着你就可以

#mysqladmin -S /路径/mysql.sock -u root

如果是原来很正常的,溘然有一天系统见告你找不到mysql.sock这鬼文件了,怎么办?

那只好用/etc/rc.d/init.d/mysql restart 或者service mysql restart 重启做事了

如果还弗成.就先

#ps -aux|grep mysql

找mysql的进程.

#kill mysql进程号

确定全部kill光

再/etc/rc.d/init.d/mysql restart 或者service mysql restart 重启做事

标签:

相关文章