Symfony 4 | Doctrine | Возникла исключительная ситуация в драйвере: SQLSTATE [HY000] [2002] Соединение отклонено - PullRequest
0 голосов
/ 24 апреля 2020

Я прочитал каждый пост, связанный с этой проблемой, но мне кажется, что ничего не работает.

Я хочу создать базу данных с помощью следующей команды:

$ php bin / console doctrine: база данных: создать

Ошибка:

In AbstractMySQLDriver.php line 93:

  An exception occurred in driver: SQLSTATE[HY000] [2002] Connection refused  


In PDOConnection.php line 31:

  SQLSTATE[HY000] [2002] Connection refused  


In PDOConnection.php line 27:

  SQLSTATE[HY000] [2002] Connection refused  


doctrine:database:create [--shard SHARD] [--connection [CONNECTION]] [--if-not-exists] [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [-e|--env ENV] [--no-debug] [--] <command>

Что я пробовал до сих пор:

  • Я обновил версию сервера
  • Я изменил 127.0.0.1 на localhost
  • Я создал нового пользователя в файле phpmyadmin

Мой .env файл выглядит так:

# IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml
DATABASE_URL=mysql://root:123@127.0.0.1:3306/myproject?serverVersion=10.4.11
###< doctrine/doctrine-bundle ###

Мой doctrine .yaml файл выглядит так:

doctrine:
    dbal:
        driver: pdo_mysql
        server_version: '10.4.11'

        url: '%env(resolve:DATABASE_URL)%'

Я ценю любую помощь!

1 Ответ

0 голосов
/ 27 апреля 2020

Вот как может выглядеть стандартный doctrine .yaml (SF5.0 !, Doctrine2.0)

// YOUR_NAMESPACE \ config \ packages \ doctrine .yaml

doctrine:
    dbal:
        url: '%env(resolve:DATABASE_URL)%'

        # IMPORTANT: You MUST configure your server version,
        # either here or in the DATABASE_URL env var (see .env file)
        server_version: '10.4'
    orm:
        auto_generate_proxy_classes: true
        naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
        auto_mapping: true
        mappings:
            App:
                is_bundle: false
                type: annotation
                dir: '%kernel.project_dir%/src/Entity'
                prefix: 'YOUR_NAMESPACE\Entity'
                alias: YOUR_NAMESPACE

и .env.local

DATABASE_URL=mysql://root:123@127.0.0.1:3306/myproject2

ваш composer. json должен содержать в требуемом сегменте

"doctrine/doctrine-bundle": "^2.0",
"doctrine/doctrine-migrations-bundle": "2.1.*",
"doctrine/orm": "2.7.*",

и в вашем doctrine_migrations.yaml

// YOUR_NAMESPACE \ config \ packages \ doctrine_migrations.yaml

doctrine_migrations:
    dir_name: '%kernel.project_dir%/src/Migrations'
    # namespace is arbitrary but should be different from App\Migrations
    # as migrations classes should NOT be autoloaded
    namespace: DoctrineMigrations
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...