创建数据库的Doctrine错误:拒绝用户访问

时间:2012-02-25 07:31:23

标签: database doctrine symfony

我试图在Doctrine中创建一个新的数据库,php app/console doctrine:database:create但是我收到了一个错误:我修复了它,感谢 website

现在我有第二个错误,但我找不到任何解决方案:

此外:

pc11:Symfony Paul$ php app/console doctrine:database:create

我有这个错误:

  

无法为名为symfony的连接创建数据库   SQLSTATE [28000] [1045]用户'root'@'localhost'拒绝访问(使用密码:NO)

我试过没有“symfony”,但它不起作用:
pc11:~ Paul$ php app/console doctrine:database:create
Could not open input file: app/console

你知道如何解决这个问题吗?

由于

4 个答案:

答案 0 :(得分:3)

您可能缺少数据库配置,它尝试以没有密码的用户root连接到MySQL ,并且无法获得创建数据库的权限。

检查parameters.ini有关数据库连接的设置。

答案 1 :(得分:1)

您需要将root @ localhost的密码设置为空。有两种方法:

The MySQL SET PASSWORD command:

SET PASSWORD FOR root@localhost=PASSWORD('');

Using the command-line mysqladmin tool:

mysqladmin -u root -pCURRENTPASSWORD password ''

答案 2 :(得分:0)

<强>解决方案

这适用于Mac OS X和MAMP(或MAMP Pro)。

app / config / parameters.xml

中添加 database.unix_socket
parameters:
    database.driver:        pdo_mysql
    database.host:          localhost
    database.port:          8888
    database.name:          my-database-name
    database.user:          root
    database.password:      root
    database.unix_socket:   /Applications/MAMP/tmp/mysql/mysql.sock

app / config / config.xml

中添加 unix_socket
# Doctrine Configuration
doctrine:
    dbal:
        # ...
        unix_socket: "%database.unix_socket%"

答案 3 :(得分:-1)

我遇到了同样的问题。

如果您想尝试使用php,则必须将app/console更改为bin/console

enter image description here