Php FOSUserBundle-SQLSTATE[28000][1045]拒绝用户访问';根'@';本地主机';(使用密码:否)
这令人沮丧。我的设置在我的开发机器上运行良好,但给了我一个 拒绝用户“root”@“localhost”的SQLSTATE[28000][1045]访问(使用密码:否) 部署到共享主机时出错。My parameters.yml: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
# 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中,所以都没有被传输