首页 > 解决方案 > Yii2 (php): SQLSTATE[HY000] [2002] 连接被拒绝

问题描述

我正在尝试从 Yii2 应用程序连接到数据库。它导致错误:

SQLSTATE[HY000] [2002] Connection refused

但是我可以使用 Workbench 或从控制台使用相同的凭据连接到 db。

我在 macOS Mojave 上使用 XAMP。Yii2 配置:/xampp/volumes/root/htdocs/cms/config/cms_dev.php

return [
  'class' => 'yii\db\Connection',
  'dsn' => 'mysql:host=127.0.0.1;dbname=cms_dev;port=3306',
  'username' => 'root',
  'password' => '12345678',
  'charset' => 'utf8mb4',
];

第一次尝试是使用 'localhost' 而不是 '127.0.0.1' 但还有另一个错误:

SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known

工作台: 在此处输入图像描述

所以我相信 Yii2 中的一些东西应该改变。 堆栈跟踪 xampp服务

- 'netstat -an | 的输出 grep 3306':

tcp4       0      0  127.0.0.1.3306         127.0.0.1.50212        ESTABLISHED
tcp4       0      0  127.0.0.1.50212        127.0.0.1.3306         ESTABLISHED
tcp4       0      0  127.0.0.1.3306         127.0.0.1.50211        ESTABLISHED
tcp4       0      0  127.0.0.1.50211        127.0.0.1.3306         ESTABLISHED
tcp46      0      0  *.33060                *.*                    LISTEN     
tcp46      0      0  *.3306                 *.*                    LISTEN 

标签: phpmysqlyii2mysql-workbench

解决方案


推荐阅读