【发布时间】:2016-09-19 18:01:27
【问题描述】:
尝试在 Doctrine 中创建数据库时,我不断收到此问题(我使用的是 Symfony 3.1.4):
驱动程序发生异常:SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO)`
据我所知,当用户没有密码或密码不正确时,尝试连接 MySQL 时会弹出此错误。但这不是我的情况。
parameters.yml 如下:
# This file is auto-generated during the composer install parameters:
database_host: 127.0.0.1
database_port: 8080
database_name: symfony_db
database_user: root
database_password: password
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null
secret: secret`
还有 config.yml...
# Doctrine Configuration
doctrine:
dbal:
driver: pdo_mysql
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8`
所以,这里似乎没有任何问题。 MySQL 确实有密码,parameters.yml 中的密码和我在 phpmyadmin 中使用的和使用 Laravel 时使用的完全一样。
提前致谢。
【问题讨论】:
-
将您的 database_host 更改为 localhost 而不是 127.0.0.1
-
没有骰子,结果一样!
-
它说“使用密码:否”所以我认为你的配置是错误的。
-
那可能是,但在哪里?我承认我在安装 Symfony 时浏览了配置部分,但它所做的只是构建我可以稍后编辑的 parameters.yml 文件,对吧?
-
不确定这是否有任何关系,但我会重新检查您使用的端口。 8080 默认是 HTTP 端口,而 MySQL 默认使用 3306。
标签: php mysql doctrine symfony