Php 如何使用Doctrine在基于Symfony2的网站上创建数据库?

Php 如何使用Doctrine在基于Symfony2的网站上创建数据库?,php,mysql,symfony,doctrine-orm,Php,Mysql,Symfony,Doctrine Orm,这看起来应该很容易,但我在按照以下说明创建数据库时遇到了问题: 我编辑parameters.yml和config.yml文件,然后从终端运行此命令: php app/console doctrine:database:create 我得到的错误是: Could not create database for connection named `learn_symfony` SQLSTATE[28000] [1045] Access denied for user 'root'@'localho

这看起来应该很容易,但我在按照以下说明创建数据库时遇到了问题:

我编辑parameters.yml和config.yml文件,然后从终端运行此命令:

php app/console doctrine:database:create
我得到的错误是:

Could not create database for connection named `learn_symfony`
SQLSTATE[28000] [1045] Access denied for user 'root'@'localhost' (using password: YES)

如何解决此错误并创建数据库?

问题是您可能正在尝试连接未正确配置的服务器

这与教义无关

告诉我,你想连接到一个自制的服务器吗?它是一盏灯还是一堆废纸

编辑

如果您在最近安装的服务器上运行,则必须编辑MySQL配置,并为
root
帐户设置密码,或在指令
allowNullPassword

编辑2

如果您的服务器是LAMP,则必须更改的文件位于
/etc/my.cnf

编辑3 该文件适用于各种mysql配置。 关于
allow null
我误认为是phpMyAdmin。 尝试使用此命令为根用户设置密码

mysqladmin-u root password myverynewand secretpassword

您似乎为您的db连接输入了错误的密码(或密码,如果它应该为null)。我尝试将密码更改为null,但仍然遇到相同的问题db连接配置文件中不应将密码设置为null。如果您得到“using password:YES”,这意味着root用户的密码存在,并在数据库中设置。我在文件/etc/mysql/my.cnf中,但我不确定应该更改什么。我已将utf默认值添加到此文件,但除此之外…编辑了答案。不要忘记在脚本上设置相同的密码。别忘了永远不要在生产中使用ROOT