MacにデータベースMySQL8.0をインストールして設定する方法についてまとめました。
この記事は、オンライン講座「はじめてのSQL・データ分析入門 – データベースのデータをビジネスパーソンが現場で活用するためのSQL初心者向コース」のサポート記事です。
動画を使って学習する
【macOS】MySQL8.0のインストール ① – はじめてのSQL・データ分析入門
【macOS】MySQL8.0のインストール ② – はじめてのSQL・データ分析入門
HomebrewがMacにインストールされているか確認
Homebrew(ホームブルー)とは、macで開発ツールのインストールや更新を管理するためのソフトウェアです(無料)
ターミナルを起動
ターミナルにコマンドを入力して、エンターキーを押す
$ brew --version
-bash: brew: command not foundというように、バージョンが表示されない方は、インストールされていません。
インストールを行ないましょう。
公式サイトからスクリプトをコピー
公式サイトからスクリプトをコピーします。
スクリプトの実行
公式サイトからコピーしたスクリプトを、ターミナルに貼り付けて実行します(ペーストして、エンターキーを押す)。
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" ==> This script will install: ・・・ Press RETURN to continue or any other key to abort
パスーワードを求められたら、Macのログインパスワードを入力してエンターキーを押します。
Press RETURN to continue or any other key to abortと表示されたら、enterキーなど何かしらのキーボードのキーをおします。
インストールが完了です。
バージョンの確認
ターミナルで、コマンド「brew –version」を入力して、エンターキーを押します。
$ brew --version Homebrew 1.5.4 Homebrew/homebrew-core (git revision 51d5; last commit 2018-02-20)
※ 実行のタイミングにより、バージョンは異なります。基本的には、最新のバージョンを使えばOKです。
MySQL8.0のインストール
念のためhomebrewを最新にする
ホームブルーを最新版に更新するには、次のようにします。(ターミナルでbrew updateと入力してエンターキー)
$ brew update Already up-to-date.
のように「Already up-to-date.」表示されれば、最新バージョンであることを示します。
formula
homebrew では、いわゆるパッケージ名のことを formula と呼びます。
ホームブルーを使ってインストールされるformulaである、MySQLのバージョンを確認します。(ターミナルにbrew info mysqlと入力してエンターキー)
$ brew info mysql
次のように表示されます。
mysql: stable 8.0.11 (bottled) ・・・略・・・
mysql: stable 8.0.11、つまり安定版のバージョン8.0.11がインストールされます。
MySQLのインストールを実行
ターミナルに「brew install mysql」と入力してエンターキー
$ brew install mysql
インストールしたMySQLのバージョン確認
ターミナルに「mysql –version」と入力してエンターキー。
$ mysql --version mysql Ver 8.0.11 for osx10.13 on x86_64 (Homebrew)
※MySQL8.0.11がインストールされていることが確認できます。11の部分はインストールのタイミングで異なることがあります。
my.cnfファイルの設定
MySQLの設定は、my.cnfファイルに記載します。
日本語化設定と暗号化プラグインの設定
日本語が文字化けすることとを防ぐための設定と、暗号化プラグインの設定を行ないます。
MySQLの設定は、my.cnf というファイルに記載します。
次のように入力して、エンターキー
$ vim /usr/local/etc/my.cnf
vim(ヴィム)は、テキストエディタを起動するための、コマンドです。
キーボードのiキーを押すと、左下にinsertと表示されます。
こうなると、文字列の編集が行えるようになります。
my.cnf の末尾に次のように入力します(間違えないように、コピー&ペーストを推奨します)。
character-set-server=utf8 default_authentication_plugin=mysql_native_password
入力が完了したら、
保存してvimを終了します。次の順番で、キーボードを操作します
- 「esc」キーを押す(insertモードを終了)
- 「:」キーを押す(vimでコマンドモードにする)
- 「w」を入力(write 書き込みの意味)
- 「q」を入力(quite 終了の意味)
ちなみに、保存しないでvimを終了するには、
- 「esc」キーを押す(insertモードを終了)
- 「:」キーを押す(vimでコマンドモードにする)
- 「q」を入力、続いて「!」を入力(保存しないで終了)
vi(vim)の使い方を知りたい場合
もし、viの使い方をもう少し詳しく知りたい場合は、下記の動画を参照してください。
MySQLを起動します。
ターミナルに「mysql.server start」と入力してエンターキー。
$ mysql.server start Starting MySQL . SUCCESS!
mysql_secure_installation コマンドを実行
mysql_secure_installation コマンドを実行して、セキュリティ周りの初期設定をします。
ターミナルにmysql_secure_installation と入力してエンターキー
質問に回答をしていくと設定が完了します。
下記に、日本語でコメントを書いたので、参考にしてください。
途中でパスワードを設定するのですが、下記の、パスワードポリシーで設定を試してみてください。
$ mysql_secure_installation Securing the MySQL server deployment. Connecting to MySQL using a blank password. VALIDATE PASSWORD PLUGIN can be used to test passwords and improve security. It checks the strength of password and allows the users to set only those passwords which are secure enough. Would you like to setup VALIDATE PASSWORD plugin? Press y|Y for Yes, any other key for No: y 【← VALIDATE PASSWORD plugin をインストールするか。yesのyを入力してエンターキー】 There are three levels of password validation policy: LOW Length >= 8 MEDIUM Length >= 8, numeric, mixed case, and special characters STRONG Length >= 8, numeric, mixed case, special characters and dictionary file Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 0 【← パスワードポリシーはLOWに設定。必要に応じて強度の強いMEDIUM,STRONGを設定】 Please set the password for root here. New password: 【← パスワードを入力してエンターキー】 Re-enter new password: 【← パスワードを再入力してエンターキー】 Estimated strength of the password: 100 Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y 【← パスワード登録を進めるためにyを入力してエンターキー】 By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? (Press y|Y for Yes, any other key for No) : y 【←無名ユーザを削除するか。yを押してエンターキー 】 Success. Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y 【←root のログインをローカルからに制限するか? 】 Success. By default, MySQL comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y 【← test データベースを削除するか】 - Dropping test database... Success. - Removing privileges on test database... Success. Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y 【← 権限の変更を更新するか?】 Success. All done!
※ パスワードポリシーはローカルPC上の学習環境ということもありLOWを設定しているのですが本番サーバ環境など、セキュリティがより求められる場面では、MEDIUMやSTRONGを設定するのが良いです。
※ 設定したパスワードは忘れないように管理しましょう。
MySQLにログイン
mysql にルートユーザーでログインしてみましょう。
ターミナルで次のように入力してエンターキー。
$ mysql -u root -p
mysqlコマンドで、-uでユーザーを指定。
ユーザー名は、root
-pで、パスワードを使ったログインを行う。
という意味になります。
パスワードを求められたら、mysql_secure_installationで設定したパスワードを入力します。
ちなみに、このように詰めてもOKです。
$ mysql -uroot -p
mysqlを操作するモードになりました。ここで、sqlを入力、実行することができます。
mysqlを抜けるには、
exitと入力して、エンターキーを押します。
$ exit
これで、macのコマンドを受け付けるターミナルに戻りました。
MySQLの再起動
MySQLの再起動をして、設定を反映します。
次のように入力して、エンターキーを押します。
$ mysql.server restart
MySQLを終了するには、
次のように入力して、エンターキーを押します。
$ mysql.server stop
サーバにインストールしたMySQLは、常時起動するようにするのですが、
ローカル環境でMySQLの学習以外の作業もすると思いますので、
MySQLは、使う時に立ち上げて、使い終わったら、停止しておくのが良いと思います。
(復習)MySQLを再度立ち上げるには、
次のように入力して、エンターキーを押します。
$ mysql.server start
補足:
MySQL のステータス確認
次のように入力して、エンターキーを押します。
$ mysql.server status
起動している場合はこのように表示されます。
SUCCESS! MySQL running (13035)
停止している場合はこのように表示されます。
ERROR! MySQL is not running
おわり
この記事では、Macにhomebrewを使ってデータベースMySQL8.0をインストールする方法について学習しました。
MySQLは公式サイトのドキュメントを見れば学習することもできますが、理解するのは大変だと思います。
Udemyで公開中のオンライン講座では、動画でMySQLを使ったSQLの基礎を学べて効率的です。
無料プレビューを30分以上公開していますのでぜひご覧ください!
動画で学ぶプログラミング入門
オンラインスクールProglus(プログラス)でプログラミングを学んで、創れる人になろう!
在宅学習応援!今なら複数の基礎コースが無料!!
今すぐ詳細を確認する