質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

1回答

3718閲覧

SQLSTATE[HY000] [2002] Connection refused (SQL: select * from information_schema.tables where table

Bo_Takuma

総合スコア5

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2020/08/04 06:45

編集2020/08/04 06:58

##解決したいこと
laradockでworkspaceコンテナに入り、php artisan migrateをするとタイトルのエラーにはまりました。

ググって検索した内容をもとに試行錯誤してもエラーが変わらず・・・

どなたか解決方法を知っている方教えてもらえませんでしょうか?( ; ; )

##状態

.env /app(Laravelアプリ)

env

1DB_CONNECTION=mysql 2DB_HOST=mysql 3DB_PORT=3306 4DB_DATABASE=default 5DB_USERNAME=default 6DB_PASSWORD=secret

config/database.php

php

1 2'mysql' => [ 3 'driver' => 'mysql', 4 'url' => env('DATABASE_URL'), 5 'host' => env('DB_HOST', 'mysql'), 6 'port' => env('DB_PORT', '3306'), 7 'database' => env('DB_DATABASE', 'forge'), 8 'username' => env('DB_USERNAME', 'forge'), 9 'password' => env('DB_PASSWORD', ''), 10 'unix_socket' => env('DB_SOCKET', ''), 11 'charset' => 'utf8mb4', 12 'collation' => 'utf8mb4_unicode_ci', 13 'prefix' => '', 14 'prefix_indexes' => true, 15 'strict' => true, 16 'engine' => null, 17 'options' => extension_loaded('pdo_mysql') ? array_filter([ 18 PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), 19 ]) : [], 20 ], 21

docker-compose.yml / laradock

### MySQL ################################################ mysql: build: context: ./mysql args: - MYSQL_VERSION=${MYSQL_VERSION} environment: - MYSQL_DATABASE=${MYSQL_DATABASE} - MYSQL_USER=${MYSQL_USER} - MYSQL_PASSWORD=${MYSQL_PASSWORD} - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD} - TZ=${WORKSPACE_TIMEZONE} volumes: - ${DATA_PATH_HOST}/mysql:/var/lib/mysql - ${MYSQL_ENTRYPOINT_INITDB}:/docker-entrypoint-initdb.d ports: - "${MYSQL_PORT}:3306" networks: - backend

.env / laradock

env

1### MYSQL ################################################# 2 3MYSQL_VERSION=5.7 4MYSQL_DATABASE=default 5MYSQL_USER=default 6MYSQL_PASSWORD=secret 7MYSQL_PORT=3306 8MYSQL_ROOT_PASSWORD=root 9MYSQL_ENTRYPOINT_INITDB=./mysql/docker-entrypoint-initdb.d

###dockerの状態

command

1mbp:laradock mycomputer$ docker-compose ps 2 Name Command State Ports 3------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 4laradock_docker-in-docker_1 dockerd-entrypoint.sh Up 2375/tcp, 2376/tcp 5laradock_mysql_1 docker-entrypoint.sh mysqld Up 0.0.0.0:3306->3306/tcp, 33060/tcp 6laradock_nginx_1 /docker-entrypoint.sh /bin ... Up 0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp, 0.0.0.0:81->81/tcp 7laradock_php-fpm_1 docker-php-entrypoint php-fpm Up 9000/tcp 8laradock_phpmyadmin_1 /docker-entrypoint.sh apac ... Up 0.0.0.0:8081->80/tcp 9laradock_workspace_1 /sbin/my_init Up 0.0.0.0:2222->22/tcp, 0.0.0.0:3000->3000/tcp, 0.0.0.0:3001->3001/tcp, 0.0.0.0:4200->4200/tcp, 0.0.0.0:8001->8000/tcp, 10 0.0.0.0:8080->8080/tcp

###試したこと
① DB_HOSTを127.0.0.1からmysqlに変更
② MYSQL_VERSIONをlatestから5.7に変更
③ 確認のため、docker-compose exec workspace bashを実行後、もう一度workplaceコンテナに入ってマイグレートしても上記エラーでうまくいかず・・・

皆さんはこれでうまく行っているようですが、
テーマのエラーが変わらないです・・・

Laravel側の修正がいる、ということなのですが、
どなたか修正点を知っている方、教えてください( ; ; )

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

もし、現在のデータベースのデータがどうしても必要、ということでなければ、
ホストの ${DATA_PATH_HOST}/mysql にあるMySQL のデータを一旦別の場所に退避して
${DATA_PATH_HOST}/mysql ディレクトリーを削除して
MySQL コンテナーを再起動してみるといかがでしょうか?

これは、以前の MySQL のデータや設定などが残っていて不具合を引き起こしている場合に
あらためてコンテナー起動時の初期化処理でデータと設定を作り直させることで
改善が期待できる方法です

投稿2020/08/04 06:57

y_shinoda

総合スコア3272

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問