SQLの問題を解くために必要だったので、XAMPPをインストールしました。
しかし、XAMPPを起動してもMySQL Databaseのみ起動出来なかったのでメモ。
使用環境
MAC Sonoma14.1.2
XAMPP 8.2.4-0
結論:ポート番号を変更する
MySQL DatabaseのConfigureからポート番号を変更できるので、MySQL Databaseが起動せずに困っている方はポート番号を変更してみてください。
ポート番号が重複していると起動できない
Apache Web Server、ProFTPDの2つは問題なく起動。しかし、MySQLのみStoppedになってしまう。
原因を解決するために検索したところ、「まずはログを見ろ」と。
そこでログを見に行こうとしたのですが、「ファイルを読み込めません」となりログも見れませんでした。
ターミナルからアクセスできるのでは?と考え、XAMPPのアプリケーションフォルダに到達。
sudo tail /Applications/XAMPP/xamppfiles/var/mysql/{user}.local.err
省略
2023-12-12 17:46:11 0 [ERROR] Do you already have another mysqld server running on port: 3306 ?
省略
[ERROR] Do you already have another mysqld server running on port: 3306 ?
このエラーログよりポート番号【3306】が他で使用されていることがわかったので、"Configure"よりポート番号を変更したら無事に起動しました。
PCスリープ後にMySQL Databaseが起動しない
上記手順でMySQL Databaseは起動するようになり、問題演習が捗りました。
しかし、しばらくスリープ状態にした後に再開しようとすると表示が"stopped"となり、また起動できなくなることがあります。
以下のコマンドを使用することで、そのポート番号が使用されているか確認することができます。
sudo lsof -P -i:8306 //8306は調べたいポート番号に変更してください。
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 21932 {user} 30u IPv4 0x0x0x0x0x0x0x0x0x 0t0 TCP localhost:8306 (LISTEN)
これでポート番号を使用しているアプリケーションの情報がわかったらアプリケーションを終了させます。
今回の例だと、上記コード内のPIDの値が"21932"なので次のようにコマンドを実行します。
sudo kill 21932
これで、MySQL Databaseを開始することができます!