Использование
"php": "^7.1.3",
"doctrine/doctrine-bundle": "^1.11",
"doctrine/doctrine-fixtures-bundle": "^3.1",
"doctrine/doctrine-migrations-bundle": "^2.0",
"doctrine/orm": "^2.6",
"friendsofsymfony/oauth-server-bundle": "^1.6",
"friendsofsymfony/rest-bundle": "^2.5",
"friendsofsymfony/user-bundle": "^2.1",
"jms/serializer-bundle": "^3.3",
"symfony/asset": "4.2.*",
"symfony/yaml": "4.2.*"
Кажется, я не могу правильно настроить свою конфигурацию для подключения моего PHP-API Symfony Doctrine к моей базе данных MySQL на экземпляре БД AWS. Я использую Ubuntu 16+ на всех своих экземплярах. Я могу без проблем подключить свой локальный API к моему локальному MySQL, и я могу таким же образом подключить свой тестовый сервер, но когда я перехожу на свой производственный сервер в AWS, и я пытаюсь запустить следующее:
php bin/console doctrine:schema:update --force --env=prod --complete
Я получаю следующую ошибку:
In AbstractMySQLDriver.php line 93: An exception occurred in driver: SQLSTATE[HY000] [2002] No such file or directory
Я пробовал несколько настроек конфигурации и много поисков, но почти во всех случаях проблемы были с настройками с использованием localhost по сравнению с 127.0.0.1, и это не моя проблема, так как я пытаюсь подключиться с AWS EC2 (размещая мой API ) в экземпляр БД AWS.
Я проверил несколько раз, и мои имя пользователя, база данных, пароль и настройки пути верны, я проверил их через ручной вход в экземпляр БД.
Вот конфиг в моем config / packages / doctrine.yaml
doctrine:
dbal:
# configure these for your database server
driver: 'pdo_mysql'
server_version: '5.7'
charset: utf8
default_table_options:
charset: utf8
collate: utf8_unicode_ci
host: 'api-database.XXXXXXXXXXX.ca-central-1.rds.amazonaws.com'
port: '3306'
dbname: 'XXXXXXX'
user: 'XXXXX'
password: 'XXXXXXXXXXXXXXXXXXXXXXX'
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
monolog:
handlers:
main:
type: stream
path: '%kernel.logs_dir%/%kernel.environment%.log'
level: debug
channels: ['!event']
Я должен иметь возможность подключиться к базе данных и выполнить миграции для обновления схемы базы данных.