如何查找 mysql 的mysql.sock文件
mysql.sock文件是服务器与本地客户端进行通信的Unix套接字文件
具体的/etc/my.cnf有配置
如果是这个报错起不来主要看下配置文件是否有错误。
mysql.sock.lock 是什么文件
重启mysql的时候报错
Can\'tconnecttolocalMySQLserverthroughsocket\'/tmp/mysql.sock\'
重建一下/tmp/mysql.sock
/bin/mysqld_safe;
判断一般人解决故障时没有切换到mysql用户,造成权限有问题,无法创建mysql授权表,
所以也就无法创建/tmp/mysql.sock和hostname.pid文件。因此,总结解决方法如下:
#sumysql
$/usr/local/bin/mysql_install_db//重建授权表
$/usr/local/bin/mysqld_safe&
$/usr/local/bin/mysql//测试
mysq>bye;
文件已经解决,重新生成新的/tmp/mysql.sock和hostname.pid
代码如下复制代码
mysql没有生成mysqld.sock是什么原因?要怎么解决
一、解决var/run/mysqld没有pid和sock文件
MySQL下mysql.sock丢失丢失的原因一般是因为配置文件不一致的原因,mysqld 错误启动,mysqld_safe 会清除一次mysql.sock 。解决方法是:
判断一般人解决故障时没有切换到mysql用户,造成权限有问题,无法创建mysql授权表,所以也就无法创建/tmp/mysql.sock 和hostname.pid文件。因此,总结解决方法如下:
#su mysql // root 用户也是可以的
$/usr/local/bin/mysql_install_db//到bin目录执行,重建授权表
$/usr/local/bin/mysqld_safe &
mysql -uroot -p//测试
mysq>bye;
文件已经解决,重新生成新的 /tmp/mysql.sock 和 hostname.pid
$su root
二、解决mysql.sock文件路径不对
1.在/var/lib/mysql创建一个link:ln -s /var/lib/mysql/mysql.sock /path/to/mysql/mysql.sock
2.在root权限下修改my.cnf文件(/etc/mysql/my.cnf),指定正确的路径
3.1和2任选其一就可以
如何修改默认的mysql.sock路径
修改/etc/my.cnf
[mysqld]
datadir=/database/mysql
socket=/database/mysql/mysql.sock
[client]
socket=/database/mysql/mysql.sock不需要改,只是php.ini里有个默认的mysql.sock路径,如果你是本机php调用mysql的话,若php.ini里路径没改,就会调用到默认路径去,一般是/var/lib/mysql/mysql.sock就会提示找不到,你可以直接修改php.ini里的路径为你的mysql.sock所在路径,也可以做个软链接
标签:bin,tmp,文件,sock,mysqld,MySQLsocklock,mysql From: https://blog.51cto.com/yetaotao/5795140