XAMPPで発生する「MySQL shutdown unexpectedly」エラーの解決方法

XAMPPを使ってウェブサイトを開発する際、「MySQL shutdown unexpectedly」というエラーが発生し、MySQLが起動しなくなることがあります。このエラーは、ポートの競合、データファイルの破損、または設定ミスが原因で発生することが多いです。この記事では、効果的な解決方法をご紹介します。

エラーの主な原因

  1. ポートの競合
    MySQLはデフォルトでポート3306を使用します。他のアプリケーションがこのポートを使用している場合、MySQLは起動できません。

  2. データファイルの破損
    ibdata1やmysql/dataフォルダ内のファイルが破損すると、MySQLが起動しない場合があります。

  3. 設定ミス
    my.iniの設定ミスやアクセス権限の誤設定も原因となります。

解決手順

ステップ1:XAMPPを管理者権限で実行

  • XAMPPを終了する

  • XAMPPのアイコンを右クリックし、「管理者として実行」を選択

  • MySQLを再起動する

ステップ2:ポートの競合を確認

  • コマンドプロンプトを開き、以下を入力:

yaml
netstat -ano | findstr 3306
  • 3306番ポートが使用中の場合、my.iniで以下のようにポートを変更:

ini
port=3307
  • 保存してMySQLを再起動する

ステップ3:バックアップからデータを復元

  • XAMPPを終了する

  • C:\xampp\mysql\data を data_old にリネーム

  • C:\xampp\mysql\backup をコピーして C:\xampp\mysql\data に貼り付け

  • data_old から mysql, performance_schema, phpmyadmin 以外のデータベースを新しい data にコピー

  • ibdata1 を data_old から data にコピー

  • MySQLを再起動する

ステップ4:エラーログを確認

  • C:\xampp\mysql\data 内の mysql_error.log を開き、詳細を確認する

結論

「MySQL shutdown unexpectedly」エラーは、開発作業を中断させる可能性がありますが、原因を特定し、上記のステップを踏めば迅速に解決できます。

サポートが必要な場合は、https://upnet.com.vn までお気軽にお問い合わせください。24時間体制で対応しています。