Php FOSUserBundle-SQLSTATE[28000][1045]拒绝用户访问';根'@';本地主机';(使用密码:否)

Php FOSUserBundle-SQLSTATE[28000][1045]拒绝用户访问';根'@';本地主机';(使用密码:否),php,mysql,symfony,pdo,fosuserbundle,Php,Mysql,Symfony,Pdo,Fosuserbundle,这令人沮丧。我的设置在我的开发机器上运行良好,但给了我一个 拒绝用户“root”@“localhost”的SQLSTATE[28000][1045]访问(使用密码:否) 部署到共享主机时出错。My parameters.yml: # This file is auto-generated during the composer install parameters: database_driver: pdo_mysql database_host: mysql.server322

这令人沮丧。我的设置在我的开发机器上运行良好,但给了我一个

拒绝用户“root”@“localhost”的SQLSTATE[28000][1045]访问(使用密码:否)

部署到共享主机时出错。My parameters.yml:

# This file is auto-generated during the composer install
parameters:
    database_driver: pdo_mysql
    database_host: mysql.server322.com
    database_port: 3306
    database_name: adirule_db
    database_user: adirule
    database_password: Ref1ect0b0l1!
    mailer_transport: smtp
    mailer_host: localhost
    mailer_user: null
    mailer_password: null
    locale: en
    secret: ThisTokenIsNotSoSecretChangeIt
config.yml:

# Doctrine Configuration
doctrine:
    dbal:
        driver:   %database_driver%
        host:     %database_host%
        port:     %database_port%
        dbname:   %database_name%
        user:     %database_user%
        password: %database_password%
        charset:  UTF8
        # if using pdo_sqlite as your database driver, add the path in parameters.yml
        # e.g. database_path: %kernel.root_dir%/data/data.db3
        # path:     %database_path%

    orm:
        auto_generate_proxy_classes: %kernel.debug%
        auto_mapping: true

fos_user:
    db_driver: orm
我不知道去哪里看/如何解决这个问题,因为我以前从未见过它。看起来它绕过了我的db user/password组合,默认为root/no password


有什么建议吗?

奇怪的是,通过
$app/console cache:clear--env=prod清除缓存修复了它。不知道为什么。希望它能保持不变,而不是某种幸运的巧合。

奇怪的是,通过
$app/console cache:clear--env=prod清除缓存,修复了它。不知道为什么。希望它保持不变,而不是某种幸运的巧合。

这正是它所做的。那么,您确定所有内容都复制到了服务器上吗?是的,考虑到在我尝试像
doctor:schema:create
fos:user:create
这样的操作时,它可以通过命令行正常工作,所以可以在本地主机上工作,您在服务器上做了吗?我的开发盒上的所有内容都正常工作。在我使用的共享主机上,命令行数据库活动(如生成db模式或创建新用户)起作用,但应用程序内活动(如登录)会产生错误。这正是它所做的。那么,您确定所有内容都复制到了服务器上吗?是的,考虑到在我尝试像
doctor:schema:create
fos:user:create
这样的操作时,它可以通过命令行正常工作,所以可以在本地主机上工作,您在服务器上做了吗?我的开发盒上的所有内容都正常工作。在我正在使用的共享主机上,命令行数据库活动(如生成db架构或创建新用户)可以正常工作,但应用内活动(如登录)会生成该错误。在您的开发框上,您可以使用开发环境。如果共享主机上存在
app/cache/prod
文件夹(来自上传),则您有一个已编译的旧缓存用于生产。所有的配置(包括parameters.yml)都被编译成普通的php代码。这两个缓存都包含在my.gitignore中,因此它们都不会在您的dev-box上传输,您的dev-box使用dev环境。如果共享主机上存在
app/cache/prod
文件夹(来自上传),则您有一个已编译的旧缓存用于生产。所有的配置(包括parameters.yml)都被编译成普通的php代码。这两个缓存都包含在my.gitignore中,所以都没有被传输