我遇到了PDO异常
PDOException: sqlSTATE[HY000] [2002] Can't connect to local MysqL server through socket '/tmp/MysqL.sock' (2) in lock_may_be_available() (line 167 of home/../includes/lock.inc).
为了解决这个问题,我尝试使用该命令重新创建符号链接.我正在研究linux服务器.
ln -s /home/../MysqL/tmp/MysqL.sock /tmp/MysqL.sock
执行上面的sql语句时,PDO异常没有变化.后来,我错误地删除了“/home/../MysqL/tmp/”中的MysqL.sock文件(不在“/ tmp”中).
解决方法
vi /etc/MysqL/my.cnf
您将在配置文件中找到顶部的行
[client] port = 3306 socket = /var/run/MysqLd/MysqLd.sock
确保MysqLd.sock在它应该的位置我不喜欢你的错误消息“/tmp/MysqL.sock”中的路径
既然你在这里也在寻找这条线
bind-address = 127.0.0.1
如果您尝试从远程位置进行连接,请注释此行.
尝试在本地连接(从服务器上的终端)
MysqL -u root -p
如果您不关心安全性(即您的个人服务器不是多用户环境),您还可以确保任何人都可以读取该文件
chmod a+r /var/run/MysqLd/MysqLd.sock
以上所有内容都可以解决您的连接问题.
要获取该文件,您可以重新安装MysqL服务器.
apt-get purge MysqL-server apt-get install MysqL-server
或者你可以下载MysqL-server .deb包解压它,你应该在那里找到它.如果您使用RHL,则等效.rpm.
编辑:由于您一直在复制文件,可能文件所有权已更改为root,因此请检查(使用ls-la / path).所有者应该是MysqL组MysqL.想不出别的什么.