エンジニ屋.com(エンジニヤドットコム)

分かりやすくを意識して情報発信!

【MySQLエラー】必ず試してほしい対処法 Error: MySQL shutdown unexpectedly. This may be due to a blocked port, missing dependencies ....

何をやっても解決出来ない、諦めるしかないと思ったあなた、この方法がまだなら試して!

エラー画像

Mysqlエラー画像

筆者は3回添付画像のエラーに突然出会いました。

ググると同じエラーの対処方法がたくさん出てきますが、どれを試しても全く解決できませんでした。

例えば、backupのファイルを削除、php.iniのportを変更や文字コード部分をコメントアウトや、他にも色々と試しましたが、どの方法も解決出来ず。

そして、3回目に再度同じエラーに出会った時に、ようやく再インストールという選択を取らずともエラーの対処ができました。

その解決方法を紹介したいと思います。

解決方法

手順①

先ずxamppフォルダ内のmysql/dataフォルダを念の為バックアップを取ります。

バックアップといっても、「data_old」としてフォルダ名を変えておくだけで良いです。

xamppフォルダの場所は、インストール時に指定していなければ、Cドライブ直下にあります。

因みに手を加える場所は、同階層のmysqlフォルダ内のみです。

手順②

mysqlフォルダ内に新しく空のdataフォルダを作成します。

手順③

mysqlディレクトリ内のbackupというフォルダがあるので全ファイルを作成したdataフォルダにコピーします。

手順④

data_old(元のdataフォルダ)にあなたが作成したdatabase名のフォルダがあるので、それを全てdataフォルダに全てコピーしてください。

フォルダだけで大丈夫です。

ファイルはコピーする必要はありません。

また、「mysql」と「performance_schema」と「phpmyadmin」の3つのフォルダはコピーしないでください!!

手順⑤

最後にdata_oldからibdata1というファイルのみをdataにコピーします。

既に存在している場合は、上書きしてください。

これでXamppのコントローラパネルを再度開いて、startを押してください。

エラーが対処されていることを願います!

私は他はどれも対処できませんでしたが、唯一こちらの方法で直りました。

もしエラーに見舞われて、まだ試していない対処方法であればぜひ試してください。

最後に

エラーの原因ですが、正直なところ明確な理由は分かりませんが、3回ともおそらくMysqlを起動したままパソコンを閉じてしまい、翌日にエラーが起きてました。

突然MySQLの接続が切られて、ファイル内でのバグかdataディレクトリ内のファイルの何かしらの破損によるエラーだと考えられるので、dataディレクトリをリセットする解決方法で直りました。

出来ればエラーを未然に防ぐべきなので、MySQLを使用しないときは、コントローラパネルでしっかりと起動をオフすることを心がけようと思います。

では以上となります。

※追肥 4回再びエラーが発生しましたが上記の方法で改善しました。  ぜひ試してください。

Have a nice development day~~!