MySQL5.7をHomebrewでmacOSにインストールする手順

投稿者 : OSCA

[PR] "東野・岡村の旅猿"で登場したロケ地を紹介するファンサイト「あの場所へ行こう!」はこちら。

概要

 本項ではデータベースサーバー「MySQL Server 5.7」を、パッケージ管理ツール「Homebrew」を利用して macOS にインストールする手順について解説します。

MySQL5.7を検索しよう

 まずは Homebrew で MySQL 5.7 が提供されていることを確認するために、brew search コマンドを利用して検索してみます。 次のように mysql@5.7 を指定して検索してみましょう。 次のように Formulae に mysql@5.7 と表示されればOKです。

$ brew search mysql@5.7
==> Formulae
mysql@5.7

MySQL5.7をインストールしよう

 Homebrew で MySQL5.7 が提供されていることが確認できたら、さっそくインストールしてみましょう。 次のように brew install コマンドに mysql@5.7 を指定します。

$ brew install mysql@5.7
Updating Homebrew...
(中略)
==> Installing mysql@5.7
==> Downloading https://homebrew.bintray.com/bottles/mysql@5.7-5.7.23.high_sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring mysql@5.7-5.7.23.high_sierra.bottle.tar.gz
==> /usr/local/Cellar/mysql@5.7/5.7.23/bin/mysqld --initialize-insecure --user=OSCA --basedir=/usr/local/Cellar/mysql@5.7/5.7.23 --datadir=/usr/local/var/mysql --tmpdi
==> Caveats
We've installed your MySQL database without a root password. To secure it run:
    mysql_secure_installation

MySQL is configured to only allow connections from localhost by default

To connect run:
    mysql -uroot

mysql@5.7 is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.

If you need to have mysql@5.7 first in your PATH run:
  echo 'export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"' >> ~/.bash_profile

For compilers to find mysql@5.7 you may need to set:
  export LDFLAGS="-L/usr/local/opt/mysql@5.7/lib"
  export CPPFLAGS="-I/usr/local/opt/mysql@5.7/include"


To have launchd start mysql@5.7 now and restart at login:
  brew services start mysql@5.7
Or, if you don't want/need a background service you can just run:
  /usr/local/opt/mysql@5.7/bin/mysql.server start
==> Summary
🍺 /usr/local/Cellar/mysql@5.7/5.7.23: 317 files, 234.4MB

 上の例のようにビールのマークが表示されれば、インストールは完了です。

MySQL5.7にパスを通そう

 インストールが完了する際に以下のような記述が表示されています。

mysql@5.7 is keg-only, which means it was not symlinked into /usr/local

 このメッセージが意味するところは「インストールはしたけどパスは通していない」ということです。 さらに表示されたメッセージに以下のような記述があります。

If you need to have mysql@5.7 first in your PATH run:
  echo 'export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"' >> ~/.bash_profile

 ~/.bash_profileexport コマンドでパスを通すような記述を追加すれば、パスを通すことができると言っていますので、言われた通りにコマンドを実行します。

$ echo 'export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"' >> ~/.bash_profile

 念のため ~/.bash_profile ファイルを開いて、末尾に次のように2行追加されたことを確認しましょう。

export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"

 最後に、macOS にログインし直すか、もしくは次のようなコマンドで ~/.bash_profile を実行し直します。 (~/.bash_profile は、ユーザが macOS にログインした時に実行されるファイルですので、再ログインするか、手動で実行してあげるというわけです)

$ source ~/.bash_profile

インストールしたMySQL5.7のバージョンを確認しよう

上記までの手順で MySQL のインストールと初期設定が完了しています。 インストールが正しく完了したことを確認する意味でも、MySQL のコマンドを叩いてみて動くことを確認しましょう。 ここではインストールしたMySQLのバージョンを表示する mysql –version コマンドを実行し、バージョンが表示されることを確認します。 次のようにバージョンが表示されればOKです。

$ mysql --version
mysql Ver 14.14 Distrib 5.7.23, for osx10.13 (x86_64) using EditLine wrapper

MySQL5.7を起動しよう

 それでは MySQL 5.7 を起動してみましょう。 インストールした際に以下の記述が表示されました。

To have launchd start mysql@5.7 now and restart at login:
  brew services start mysql@5.7

 上記のように brew services start mysql@5.7 コマンドで起動することができますので、コマンドを実行します。

$ brew services start mysql@5.7
==> Tapping homebrew/services
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-services'...
remote: Counting objects: 14, done.
remote: Compressing objects: 100% (10/10), done.
remote: Total 14 (delta 0), reused 7 (delta 0), pack-reused 0
Unpacking objects: 100% (14/14), done.
Tapped 1 command (43 files, 55.8KB).
==> Successfully started `mysql@5.7` (label: homebrew.mxcl.mysql@5.7)

 Successfully started `mysql@5.7` と表示されれば起動完了です。

MySQL5.7に接続しよう

 MySQL5.7 が起動できたら、さっそく接続してみましょう。 Homebrew でインストールしたばかりの MySQL には、次のように mysql -uroot コマンドで接続することができます。

$ mysql -uroot
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.23 Homebrew

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

 上のように mysql> とコマンドを待ち受けるモードになれば、ログイン成功です! あとはSQLを入力して自由に利用しましょう。 なお MySQL から脱出する場合は、quit コマンドを実行すると抜けることができます。

次にやるべきこと

 ここまでで MySQL 5.7 の導入手順は終わりですが、MySQL 5.7 の初期状態では root としてログインするのにパスワードは要求されませんし、安全に利用するための設定がされていません。 次のステップとして、次の記事を参考に、MySQL 5.7 を安全に利用するためのセットアップをしてはいかがでしょうか。

MySQL

MySQL 5.7 をインストールしたら最初に行うセットアップ

MySQL 入門へ戻る

MySQLのトップへ戻る

著者 : OSCA

OSCA

Java, PHP 系のWEBエンジニア。 WEBエンジニア向けコミュニティ「WEBエンジニア勉強会」を主催。 個人として何か一つでも世の中の多くの人に使ってもらえるものを作ろうと日々奮闘中。
@engineer_osca