Doctrine:无法为连接创建数据库

时间:2014-01-22 20:30:46

标签: symfony doctrine-orm

我目前正在使用Symfony2和doctrine2为数据库工作的网站。我做了本教程中的所有内容:http://tutorial.symblog.co.uk/docs/doctrine-2-the-blog-model.html

然而,当我尝试这样做时:

php app/console doctrine:database:create

我收到此错误:

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

这是我的parameters.yml:

parameters:
    database_driver: pdo_mysql
    database_host: localhost
    database_port: '3396'
    database_name: CHuts_DB
    database_user: rootDB
    database_password: ***
    ...
    database_path: null

我不明白为什么它不起作用。我是Symfony2的新手,我在互联网上搜索了一下,但我找不到与我有相同错误信息的人。

3 个答案:

答案 0 :(得分:1)

我认为您的用户和/或密码不正确。

您可以尝试使用mysql命令行:

> mysql -u rootDB -p

或在您的网络服务器中安装adminer.php并尝试验证该帐户。

答案 1 :(得分:1)

在PHPMyAdmin中转到:

Users -> rootDB -> Structure (check CREATE) 

并保存用户的权限。

答案 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%"