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

在magento2';中安装模块时出错;SQLSTATE[HY000][2000]没有这样的文件或目录';,magento2,Magento2,我在magento 2中创建了模块。 试图使用命令“sudophpbin/magento setup:upgrade”来安装创建的模块,我遇到了以下错误 转到/app/etc/env.php并更改: 'host' => 'localhost', 致: 只需将正确的IP地址和主机名更新到主机配置文件 我正在使用位于/etc/hosts中的fedora 23我的配置文件 用于编辑配置的命令 $ sudo gedit /etc/hosts <ip-address> <hos

我在magento 2中创建了模块。 试图使用命令“sudophpbin/magento setup:upgrade”来安装创建的模块,我遇到了以下错误


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

'host' => 'localhost',
致:


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

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

用于编辑配置的命令

$ sudo gedit /etc/hosts
<ip-address> <host name>
然后添加下面的行或编辑旧配置

$ sudo gedit /etc/hosts
<ip-address> <host name>


例如,192.168.1.8 bu.gworks.mobi

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

通过键入
哪个php
,检查您在命令行中使用的php。它与您的服务器使用的相同吗?如果没有,请确保在bash配置文件中导出它。例如,mac上的mamp php:

export PATH=/Applications/MAMP/bin/php/php7.0.0/bin:$PATH
还要检查命令行是否使用了存储数据库的正确mysql。如果您通过终端登录mysql:

1) 数据库是否存在

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


您还可以在命令后面附加
-v、-v或--v
以查看更详细的消息。

我发现解决此问题的方法是:

获取错误: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位置。这将解决这个问题