驱动程序发生异常:SQLSTATE [HY000] [1045]用户'db_user'@'localhost'的访问被拒绝(使用密码:是)

时间:2019-04-15 10:59:12

标签: symfony doctrine-orm symfony4

我遵循了这个documentation 在我的symfony专案(v4.2)中加入教义。但是,当安装了学说后,它就不会将此行添加到我的项目中(如文档中提到的那样在我的.env文件中):

  

DATABASE_URL =“ mysql:// db_user:db_password@127.0.0.1:3306 / db_name”

所以我这样手动添加了它:

  

DATABASE_URL =“ mysql://root@127.0.0.1:3306 / db_school”

并使用此命令创建数据库:

  

php bin /控制台学说:数据库:创建

它给了我这个错误:

  

在AbstractMySQLDriver.php第93行中:                                                                                                                                 驱动程序中发生异常:SQLSTATE [HY000] [1045]用户'db_user'@'localhost'的访问被拒绝(使用密码:是)

     

在PDOConnection.php第31行中:   SQLSTATE [HY000] [1045]用户'db_user'@'localhost'的访问被拒绝(使用密码:是)
  在PDOConnection.php第27行中:   SQLSTATE [HY000] [1045]用户'db_user'@'localhost'的访问被拒绝(使用密码:是)

即使我更改了用户名和密码,它仍然无法识别。知道为什么它不起作用吗?我会很感激的。

3 个答案:

答案 0 :(得分:0)

我认为您必须在DBMS中使用密码创建用户“ db_user”。然后授予他“管理”权限。然后更正.env的数据库配置行:

DATABASE_URL="mysql://db_user:db_password@127.0.0.1:3306/db_name"

答案 1 :(得分:0)

尝试使用与输入密码相同的语法,只需在密码应该为以下的地方输入任何内容即可

DATABASE_URL="mysql://root:@127.0.0.1:3306/db_school"

如此处所述:https://github.com/doctrine/DoctrineBundle/issues/746#issuecomment-351788298

答案 2 :(得分:0)

这种方法似乎对我不起作用,我不知道为什么,但是它以这种方式起作用:

  • 所以我用Flex来安装学说:
  

作曲家需要教义

然后我运行它:

  

撰写者需要orm

  • 然后我转到文件.env,发现数据库语法自动生成,并且一切正常。

  • 我还删除了在计算机上打开的其他sql处理器(我也安装了sql server + wamp,这说明了我的冲突),然后重新打开了wamp服务器,一切正常。