在magento2' SQLSTATE安装模块时出错[HY000] [2000]没有这样的文件或目录'

时间:2016-04-15 05:38:22

标签: magento2

我在magento 2中创建了模块。 尝试使用命令安装创建的模块 - ' sudo php bin / magento setup:upgrade'我得到了以下错误。

enter image description here

4 个答案:

答案 0 :(得分:0)

转到/app/etc/env.php并更改:

'host' => 'localhost',

为:

'host' => '127.0.0.1',

答案 1 :(得分:0)

只需将正确的IP地址和主机名更新为主机配置文件

即可

我正在使用fedora 23我的配置文件位于/ etc / hosts

编辑配置命令

$ sudo gedit /etc/hosts

然后添加以下行或编辑旧配置

<ip-address> <host name>

例如 192.168.1.8 bu.gworks.mobi

答案 2 :(得分:0)

我认为当您的命令行php无法与数据库通信时会发生此错误。

通过键入which php来检查您在命令行中使用的是哪个php。它与您的服务器使用的是一样的吗?如果不确定您将其导出到bash配置文件中。例如mac上的mamp php:

export PATH=/Applications/MAMP/bin/php/php7.0.0/bin:$PATH

还要检查命令行是否使用了存储数据库的正确mysql。如果您通过终端登录mysql:

1)db存在吗?

2)用户是否拥有足够的权限?

此外,您可以使用-v, --v, or ---v附加命令以查看更详细的消息。

答案 3 :(得分:0)

我找到了解决此问题的方法:

获取错误:SQLSTATE [HY000] [2002]没有这样的文件或目录

解决方案:创建从mamp mysql.sock到/tmp/mysql.sock的符号链接

ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock

我的情况的原因是Mamp在其他目录中安装了mysql和socket,Magento 2在默认位置查找了mysql.sock。因此,我们只需要将默认位置链接到Mamp位置。这样可以解决此问题。