概要
本項ではデータベースサーバー「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_profile に export コマンドでパスを通すような記述を追加すれば、パスを通すことができると言っていますので、言われた通りにコマンドを実行します。
$ 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 を安全に利用するためのセットアップをしてはいかがでしょうか。