サイト制作

【MAMP/Windows】MySQL・Apacheが点灯しない、localhostに接続できない

環境:windows10

MAMPで、MySQLが点灯しなくなり、解決したと思ったらApacheが点灯しなくなり、解決したと思ったらlocalhostに接続できなくなりました。

解決策をググっても、MACのものがほとんどです。
windowsとは対応策が少し違っていて、すべて解決するのに苦労しました。

備忘録として、windowsの対応策と解決方法をまとめました。

MAMPをstartさせてもMySQLだけ起動しない

前日までMAMPで作業していたのに、翌日PCをつけてMAMPを開くと、MySQLだけ起動しないというトラブルがありました。

調べていくと、
パソコンを閉じるとき、MAMPをstopさせてからシャットダウンしないといけないそうです。
MAMPを起動させたままシャットダウンすると、MySQLがうまく終了できないまま設定がおかしくなってしまうことがあります。

以下、MySQLを起動させるために、試した解決策です。

コマンドプロンプトからMySQLを停止させる

コマンドプロンプトを管理者として実行し、以下のコードを書いて決定します。

こうすると、動いているmysqlが停止するそうですが、私はうまくいきませんでした。

mysql> exit

「mysqlは内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッヂファイルとして認識されていません」というアラートがでて、対応できませんでした。

net stop mysql

「無効なサービス名です。」というアラートがでました。

../MAMP/confに「my.cnf」というファイルを置く

「my.cnf」というファイルをテキストで作り、以下のコードを書いて、/MAMP/confに格納します。

[mysqld]

default-storage-engine = InnoDB

innodb

innodb_force_recovery = 1

この対応をして、翌日起動したらMySQLが点灯するようになりました。

でも、今度はApacheが点灯しなくなっていました。

MAMPをstartさせてもApaceだけ起動しない

../MAMP/confにおいた「my.cnf」ファイルを無効化

mysqlを点灯させるために、以下のファイルを置きました。

../MAMP/confに「my.cnf」

これが影響を与えていたようです。

mysqlが起動するようになったので、「my.cnf」を無効化する必要があるようです。

このファイル名を「_my.cnf」に変えたら、Apacheは接続できました。

localhostに接続できない

mysqlもApacheも接続できたのに、次はwordpressを表示させることができません。

ポートを変更

MAMP画面の上のメニューの中の、「MAMP」から「perference」から「ports」を選択し、

「set web & MySQL ports to 80 & 3306」を選んでOKを押すと直りました。

まとめ

なんとか解決できましたが、MAMPは素人には難しいです。

もう二度と、MAMPを開いたままシャットダウンしないように気をつけようと誓いました。