symfony控制台doctrine:schema:update--force sqlstate[hy000][1045]拒绝用户“root”@“localhost”的访问(使用密码:no)

2o7dmzc5  于 2021-06-15  发布在  Mysql
关注(0)|答案(1)|浏览(400)

我有一个symfony4应用程序,它连接到一个本地mysql示例。它在应用程序中运行得非常好,而且在使用控制台命令进行操作时也是如此。突然,即使我的数据库配置没有任何变化(我的mysql示例正在运行),我还是得到了这个错误:
sqlstate[hy000][1045]拒绝用户“root”@“localhost”的访问(使用密码:否)
当我跑步时:
php箱/控制台doctrine:schema:update—强制
不过,我在应用程序中的连接工作得非常好!就在一小时前,同样的命令还很有效。我知道关于这个问题已经有很多问题要问了,但答案不适用于我。我现在面临着完成一个项目的时间压力,这让我发疯。
这是我的.env配置:

DB_USER=root
DB_PASSWORD=root
DB_HOST=localhost
DB_PORT=3306
DB_NAME=test DATABASE_URL=mysql://${DB_USER}:${DB_PASSWORD}@${DB_HOST}:${DB_PORT}/${DB_NAME}

我的document.yaml配置如下所示:

parameters:
    # Adds a fallback DATABASE_URL if the env var is not set.
    # This allows you to run cache:warmup even if your
    # environment variables are not available yet.
    # You should not need to change this value.
    env(DATABASE_URL): ''

doctrine:
    dbal:
        # configure these for your database server
        driver: 'pdo_mysql'
        server_version: '5.7'
        charset: utf8mb4
        default_table_options:
            charset: utf8mb4
            collate: utf8mb4_unicode_ci

        url: '%env(resolve:DATABASE_URL)%'
        mapping_types:
            enum: string
    orm:
        auto_generate_proxy_classes: true
        naming_strategy: doctrine.orm.naming_strategy.underscore
        auto_mapping: true
        mappings:
            App:
                is_bundle: false
                type: annotation
                dir: '%kernel.project_dir%/src/Entity'
                prefix: 'App\Entity'
                alias: App
muk1a3rh

muk1a3rh1#

我通过将document.yaml中的字符集和排序规则更改为另一个更通用的utf8来解决这个问题。我没有改变它的整个时间,直到那时,它以前与它一起工作,所以我不知道为什么它突然决定在应用程序的一部分不够好。

相关问题