生産にLaravel蒸気を使用してMySQLデータベースに接続できません

豊富:

私は基本的にルートのカップルにログインし、制限付きアクセスを許可するために、単純なJWT認証を使用してLaravel 6に建てられた目的をテストするために、小さなシンプルなAPIを持っています。すべての簡単なものは、本当に、それだけで罰金ホームステッドを使用して動作します。

しかし、上の蒸気私はそれが実際にデータベースに話を取得することはできません。ここでは、DB名にを追加するよりも、他のデフォルトからあまり変わっていない、私のvapor.ymlのルックスが好きなものです

id: 7529
name: mything
environments:
    production:
        database: mydb
        database-user: vapor
        memory: 1024
        cli-memory: 512
        runtime: php-7.4
        build:
            - 'composer install'
            - 'php artisan jwt:secret'
            - 'php artisan event:cache'
            - 'npm ci && npm run prod && rm -rf node_modules'
    mything-environment:
        build:
            - 'composer install'
    staging:
        memory: 1024
        cli-memory: 512
        runtime: php-7.4
        build:
            - 'composer install'
            - 'php artisan jwt:secret'
            - 'php artisan event:cache'
            - 'npm ci && npm run dev && rm -rf node_modules'

私はそうと蒸気CLIを使用してDBを設定しています php vendor/bin/vapor mydb

そして、そのよう.env.productionファイルを編集しています php vendor/bin/vapor env:pull production

そして、関連CONN詳細を追加しました

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=mydb

私は、再展開、多くの時間を持っている、そしてアプリケーションが動作します。しかし、私はいつも、たとえば、エラーで終わるデータベース作業のいずれかの種類を実行する場合:

{"message":"SQLSTATE[HY000] [2002] Connection refused (SQL: insert into `users` (`name`, `email`, `password`, `updated_at`, `created_at`) values (testtest, [email protected], $2y$10$SYYdAXC1aYrFUBQ/wVHcDuUgzBfTK76cvqxaiS2d8Kbg4Vbp/VGXK, 2020-02-29 22:37:36, 2020-02-29 22:37:36))","context":{"exception":{"class":"Illuminate\\Database\\QueryException","message":"SQLSTATE[HY000] [2002] Connection refused (SQL: insert into `users` (`name`, `email`, `password`, `updated_at`, `created_at`) values (testtest, [email protected], $2y$10$SYYdAXC1aYrFUBQ/wVHcDuUgzBfTK76cvqxaiS2d8Kbg4Vbp/VGXK, 2020-02-29 22:37:36, 2020-02-29 22:37:36))","code":2002,"file":"/var/task/vendor/laravel/framework/src/Illuminate/Database/Connection.php:669","previous":{"class":"PDOException","message":"SQLSTATE[HY000] [2002] Connection refused","code":2002,"file":"/var/task/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70"}},"aws_request_id":"9bba7341-a0f3-481c-961a-a0b59fcb64b9"},"level":400,"level_name":"ERROR","channel":"

右方向に誰ポイント私はできますか?私は.envに追加する必要が信じていないユーザーとパスワードのvarsは、私はまだ同じ問題をとにかくそれを試みたが、しています。

ロバートKujawa:

あなたの構成は次のようになります。

vapor.yml

id: 7529
name: mything
environments:
    production:
        database: mydb
        memory: 1024
        cli-memory: 512
        runtime: php-7.4
        build:
            - 'composer install'
            - 'php artisan jwt:secret'
            - 'php artisan event:cache'
            - 'npm ci && npm run prod && rm -rf node_modules'
    mything-environment:
        build:
            - 'composer install'
    staging:
        memory: 1024
        cli-memory: 512
        runtime: php-7.4
        build:
            - 'composer install'
            - 'php artisan jwt:secret'
            - 'php artisan event:cache'
            - 'npm ci && npm run dev && rm -rf node_modules'

あなたはデフォルトの「蒸気」ユーザーを使用している場合は、データベース・ユーザーを指定する必要はありません。

.env

DB_DATABASE=mydb

データベースが置かれている場所ではありませんこれは、蒸気が自動的にあなたのためにそれらを注入し、あなたのケースであなたがローカルホストへの接続を指定しているので、あなたは、データベース名を他の任意の他のデータベース環境変数をオーバーライドするべきではありません。

また、あなたが蒸気中のデータベース環境を作成するときに、唯一の既存のデータベース・スキーマが最初にそのデータベース環境でのデータベーススキーマを作成する必要があります「mydbという」という名前のカスタムデータベースに接続するためには、「蒸気」になることに注意してください。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=18104&siteId=1