LoginSignup
4
2

More than 3 years have passed since last update.

dockerで突如mysql:5.5系が起動しなくなった

Last updated at Posted at 2020-03-17

複数のwordpress案件をdockerで開発していたところ、

以前は立ち上がっていたプロジェクトで
docker-compose upした際、
wpのコンテナは起動するのにmysql:5.5.58イメージが起動しない(立ち上がった直後強制終了)
という状態に(´;ω;`)

試したこと(全部だめ)

  • コンテナ再スタート
    docker-compose stop
    docker-compose up

  • コンテナ削除・再構築・スタート
    docker-compose down
    docker-compose build
    docker-compose up

  • 別フォルダに再度環境構築
    git clone
    docker-compose build
    docker-compose up

  • macのストレージを掃除(メモリ不足かと思った)

  • mac再起動(※セーフブート後、再構築)

すべて変わらず。

エラーログ

200317  8:52:24 [Note] --secure-file-priv is set to NULL. Operations related to importing and exporting data are disabled
200317  8:52:24 [Note] mysqld (mysqld 5.5.58) starting as process 1 ...
200317  8:52:24 [Note] Plugin 'FEDERATED' is disabled.
200317  8:52:24 InnoDB: The InnoDB memory heap is disabled
200317  8:52:24 InnoDB: Mutexes and rw_locks use GCC atomic builtins
200317  8:52:24 InnoDB: Compressed tables use zlib 1.2.3
200317  8:52:24 InnoDB: Using Linux native AIO
200317  8:52:24 InnoDB: Initializing buffer pool, size = 128.0M
200317  8:52:24 InnoDB: Completed initialization of buffer pool
InnoDB: Error: checksum mismatch in data file ./ibdata1
200317  8:52:24 InnoDB: Could not open or create data files.
200317  8:52:24 InnoDB: If you tried to add new data files, and it failed here,
200317  8:52:24 InnoDB: you should now edit innodb_data_file_path in my.cnf back
200317  8:52:24 InnoDB: to what it was, and remove the new ibdata files InnoDB created
200317  8:52:24 InnoDB: in this failed attempt. InnoDB only wrote those files full of
200317  8:52:24 InnoDB: zeros, but did not yet use them in any way. But be careful: do not
200317  8:52:24 InnoDB: remove old data files which contain your precious data!
200317  8:52:24 [ERROR] Plugin 'InnoDB' init function returned error.
200317  8:52:24 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
200317  8:52:24 [ERROR] Unknown/unsupported storage engine: InnoDB
200317  8:52:24 [ERROR] Aborting
200317  8:52:24 [Note] mysqld: Shutdown complete

エラーログでググって、下記の記事にたどり着いたのだけど、

MySQL5.5系がservice mysqld startで起動しない

Mysql自体はruby案件で必要だったのでHomebrew経由でインストールしたことあるけれど、
色々試した結果、
dockerってmysqlもきっと内部で環境もっているよね・・?
・・となんとなく思い、docker関連で情報集める。

解決!

まずはこちらを参考に、docker内をゴミ掃除。

dockerでいらないimage,container,networkを一括削除する

  • 使ってないコンテナ
  • 使ってないイメージ
  • 使ってないネットワーク

を削除後、 docker-compose build --no-cache を試す。
変わらず。

泣きそう・・😭はつづく。さらに調べると、こちらの記事を発見。

docker-composeでmysqlのバージョン変えたら起動しなくなった

わたしの場合、docker-compose.ymlは特にいじっていなかったのだけど、
実はこの現象が起こる前、別案件のdockerの環境構築を行っていた。

そちらのdocker-compose.ymlを確認すると、
mysqlのバージョンはmysql:5.7.21になっていて、
(どちらもcontainer_nameちゃんとついていたんだけども、)
なんかdocker内部のmysqlのバージョンのログ?が元になっているのだとすると、
効果あるかも・・・・ということで、先程やっていなかった「ボリュームの削除」を実行。

コンソールで出力してみたものの、volume IDがわからなかったので、
Visual Studio CodeのDocker ExtentionのGUIから削除。
スクリーンショット 2020-03-17 19.37.08.png
↑右クリック+「Remove」

その後
docker-compose build --no-cache
すると!!!

動いた〜〜〜〜!!!!😭🙏✨

終わり

本当に・・3時間位摩耗したので、先人の記事に救われて感謝。
すべての人がこれで解決するのかは謎ですが、困ったら一度お試しを..!御加護を祈ります。

(解決はできたけど、結局、内情というか根本的な原因についてはわかってない・・・)

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2