使用doctrine,Symfony 4创建数据库时访问被拒绝

时间:2018-06-06 14:32:17

标签: mysql symfony doctrine symfony4

我创建了一个新的Symfony 4项目,并希望创建一个新的数据库。我关注this tutorial但无法让它发挥作用。运行时

php bin/console doctrine:database:create

我总是得到同样的错误:

In AbstractMySQLDriver.php line 112:
    An exception occurred in driver: SQLSTATE[HY000] [1045] Access denied for user 'user_1'@'localhost' (using password: YES)

In PDOConnection.php line 50:
    SQLSTATE[HY000] [1045] Access denied for user 'user_1'@'localhost' (using password: YES)

In PDOConnection.php line 46:
    SQLSTATE[HY000] [1045] Access denied for user 'user_1'@'localhost' (using password: YES)

在本教程之后,我在.env文件中配置了数据库网址,但它似乎没有改变任何内容。

DATABASE_URL=mysql://user_1:secretPassword@127.0.0.1:3306/db_name

我的config / packages / doctrine.yaml配置:

parameters:
    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)%'
    orm:
        auto_generate_proxy_classes: '%kernel.debug%'
        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

尝试了一切,似乎没有任何工作。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:2)

您的用户可能无法CREATE DATABASE操作。 在MySQL控制台中使用grant CREATE on *.* to 'user_1'@'localhost';为您的用户授予权限。

答案 1 :(得分:0)

请参阅此similar issue

问题的可能原因:

  • 整理数据库
  • mysql凭据无效

答案 2 :(得分:0)

检查与当前凭据的连接。 * nix

的示例
mysql -uuser_1 -p

检查mysql服务器的端口

mysql> SHOW GLOBAL VARIABLES LIKE 'PORT';
相关问题