我遵循了这个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'的访问被拒绝(使用密码:是)
即使我更改了用户名和密码,它仍然无法识别。知道为什么它不起作用吗?我会很感激的。
答案 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)
这种方法似乎对我不起作用,我不知道为什么,但是它以这种方式起作用:
作曲家需要教义
然后我运行它:
撰写者需要orm
然后我转到文件.env
,发现数据库语法自动生成,并且一切正常。
我还删除了在计算机上打开的其他sql处理器(我也安装了sql server + wamp,这说明了我的冲突),然后重新打开了wamp服务器,一切正常。