【PHP初心者向け】MAMPでMySQLだけ停止する方法【Mac】

東京のすみっこより愛をこめて。fummyです😊💡

初心者向けの超優良入門書『いきなりはじめるPHP』をMAMPでやっていて一番困ったことは、MAMPでは画面操作で「Apacheを起動させたままMySQLだけ停止することができない」ことです。

MAMP以外のPHPの開発環境の中には、画面からMySQLだけ停止できるものもあるんですよね(例えばXAMPP)。しかし、MAMPにはその機能はありません。なので、この点が、本書をMAMPでやる上での罠の一つだったりします。

とはいえ、なんとかMAMPでも方法がないかと調べた結果、画面操作ではなく、ターミナルの操作で、MAMPでも「MySQLだけを停止する」ことができました!

ですので、本記事では、その方法をご紹介したいと思います。

ちなみに、『いきなりはじめるPHP』に関しては、以下の記事で紹介していますので、ご興味ある方は参照いただければと思います。

念のためフォローしておくと、『いきなり始めるPHP』では、XAMPPを使用することが指示されてます。XAMPPを使用した際の作業手順も、懇切丁寧に解説されています。
わたしが勝手にMAMPを使ってやってしまったので、自力で解決しました。(自業自得です… ^^;)

SPONSORED LINK

MySQLだけ停止する目的

ちなみにですが、MySQLだけ停止させようとしている目的は、「Appachサーバは動作しているけど、MySQLサーバがダウンしたとき」を想定して、以下のような試験を行うことです。

MAMP, MySQL, Apache, 停止

今回、Webサイト上で行うお客様アンケートのシステムをPHPで実装しました。

このアンケートシステムでは、MySQLサーバがダウンしているときにWebサイト(アンケートページ)にアクセスしたユーザーに対して、「ただいま障害により大変ご迷惑をおかけしております」という専用のエラーメッセージをします。(『いきなりはじめるPHP』、p.144)

この機能が正常に動作しているか試験するために、アンケートページでアンケートの回答を入力して送信し、以下の3つの項目についての確認を行います。しかし、Apacheサーバまでダウンさせてしまうと、そもそもWebサイト(アンケートページ)自体が表示されなくなってしまうため、項目①の時点でつまずいてしまいます。

  1. Webサイト(アンケートページ)からアンケートに回答し、入力内容を送信できること。
  2. 「ただいま障害により大変ご迷惑をおかけしております」というお詫び画面が表示されること。
  3. データベース(MySQL)には送信した内容が登録されていないこと。

そのため、Apacheサーバは起動したまま、MySQLだけ停止させる必要があるのです。

SPONSORED LINK

なぜMAMPでは画面からMySQLだけ停止することができないのか?

MAMPでは画面からはMySQLだけ停止することができません。

画面を見ていただくとわかるのですが、「起動」ボタンがひとつしかありません。
MAMPの画面からは、ApacheもMySQLも両方同時に起動するか、同時に停止するか、どちらかしかないのです。

すでに指摘しましたが、両方停止させてしまうと、そもそもWebページが表示できなくなるため、アンケートページすら表示されなくなります。これだとアンケートに入力して送信することができませんから、試験になりません。

そのため、ターミナルを使って、MySQLのみ停止します。

SPONSORED LINK

MAMPでMySQLサーバだけを停止する具体的な方法

MAMPでMySQLサーバだけを停止したい場合は、MAMPの画面からではなく、ターミナルという黒い画面から実施します。ターミナルはプログラミング初心者には敬遠されがちですが、徐々に慣れていってほしいと思います!

手順1:ターミナルを起動する。

以下の手順で、ターミナルという黒い画面を呼び出します。

ターミナルの起動方法
  1. commandキー + スペースキー   → Spotlightを起動する。
  2. “terminal.app”と入力してEnter。 → terminal.appを検索して起動する

手順2:MAMPのMySQLのみ停止させる。

以下をターミナル画面に入力してEnterキーを押すと、MySQLだけ停止することができます。

$ /Applications/MAMP/bin/stopMysql.sh

コマンドをひとつ実行しただけですが、これでMAMPのMySQLが停止しているはずです。

MAMPの画面をみていただいて、Appachサーバのランプは点灯、MySQLのランプが消えていることが確認できれば、成功です!

SPONSORED LINK

おまけ:停止したMAMPのMySQLを再び起動する方法

いま、MAMPのMySQLだけ停止していて、Apacheは起動している状態になっていると思います。

再びMAMPのMySQLを起動したい場合は、MAMPの画面の「サーバを起動」ボタンを押すと、Apacheサーバ、MySQLサーバの両方が立ち上がります。

同時操作で、同時起動/停止なんですよね・・・。

SPONSORED LINK

おわりに

MAMP, MySQL, 停止, コマンド

MAMPのMySQLだけを停止する方法について、お伝えしてきました。
無事に実行できましたでしょうか。

この記事が少しでもお役に立てたのであれば、嬉しく思います。

PHP関連は以下の記事もありますので、参考にしてみてください。

それでは、今日も素敵な一日を!

fummy

SPONSORED LINK
SPONSORED LINK