【发布时间】:2013-11-06 22:31:01
【问题描述】:
我收到一个错误,比如使用 Symfony2 进行数据库操作。
SQLSTATE[HY000] [2002] Connection refused
parameters.yml
parameters:
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: '8889'
database_name: symfony
database_user: root
database_password: root
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null
locale: tr
secret: ef9b4381fe75208f060b7c786951242bebcfb3c2
database_path: /private/var/mysql/mysql.sock
和控制台:
Kemal-Karakass-MacBook-Pro:~ kemalkarakas$ locate mysql.sock
/private/var/mysql/mysql.sock
我该如何解决这个错误?
【问题讨论】:
-
您确定可以使用用户名/密码
root:root连接到127.0.0.1:8889上的MySQL 吗?默认 MySQL 端口3306btw. -
是的,我确定尝试{ $conn = new PDO('mysql:host=127.0.0.1;dbname=symfony; port=8889', 'root','root'); }catch (PDOException $e){ echo $e->getMessage(); } $sql = "SELECT * FROM Pages"; foreach ($conn->query($sql) as $row) { echo $row['name'].'
'; } 它正在工作 -
尝试注释掉
database_path指令 - 你想通过127.0.0.1:8889或套接字连接吗?如果您想使用套接字 - 您是否将 MySQL 配置为使用此套接字位置并尝试通过它进行连接? -
... 并删除端口周围的单引号
':) -
数据库路径:null 我试过的形式不行