我尝试连接到mysql时收到以下错误:
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
这个错误有解决方案吗?它背后的原因可能是什么?
我正在尝试设置WordPress.我运行Apache和MySQL,帐户和数据库都已设置完毕.我试图建立一个简单的连接:
<?php
$conn = mysql_connect('localhost', 'USER', 'PASSWORD');
if(!$conn) {
echo 'Error: ' . mysql_errno() . ' - ' . mysql_error();
}
?>
Run Code Online (Sandbox Code Playgroud)
我总是得到这个:
错误:2002 - 没有这样的文件或目录
它可以谈论什么文件或目录?
我使用的是内置Apache的OS X Snow Leopard.我使用x86_64 dmg安装了MySQL.
更新:我发现套接字位于/tmp/mysql.sock,所以在php.ini中,我用它替换了所有错误路径.
我刚在Homebrew上安装了mysql
brew install mysql
mysql -V
mysql Ver 8.0.11 for osx10.13 on x86_64 (Homebrew)
Run Code Online (Sandbox Code Playgroud)
从终端它工作,我可以登录到mysql,但从Sequel Pro它说
无法连接到主机127.0.0.1,或请求超时.
确保地址正确并且您具有必要的权限,或尝试增加连接超时(当前为10秒).
MySQL说:无法加载身份验证插件'caching_sha2_password':dlopen(/usr/local/lib/plugin/caching_sha2_password.so,2):找不到图片
无法弄清楚我错过了什么
在CentOS 7机器上,当我尝试从终端登录mysql时出现以下错误:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
Run Code Online (Sandbox Code Playgroud)
然后,我尝试cd /var/lib/mysql和ls -al,但由此产生的文件列表不包含mysql.sock. 那么我在哪里可以找到mysql.sock,如何解决此错误?
以下是我已经尝试过的一些事情:
1.)当我看到systemctl status mysqld显示mysql被停止时,我也尝试了systemctl start mysqld但是终端只是给了一个没有响应的光标而没有新的提示,好像它被等待某些东西,但它无限期地保持在那个边缘状态.
2.)所以我打开了另一个终端窗口并运行systemctl status mysqld,只是为了看到mysqld再次启动.但错误仍然存在.
3.)我试过,find / -name "mysql.sock"但回答是find: ‘/run/username/1000/gvfs’: Permission denied.
4.)然后我读了这篇文章并试过mysqladmin | grep d.sock但没有结果.
5.)我甚至采取了yum remove mysql跟随yum install mysql,但mysql -u root在此帖子的顶部仍然给出相同的原始错误.
6.)然后我读了这个其他帖子,但是mysqladmin variables给出了相同的错误,因为 …