Docker や VirtualBox ではなく Mac に MySQL をインストールしてみます。
Homebrew を更新してから MySQL 最新版をインストールします。
$ brew update
$ brew install mysql
パスを設定します。
$ brew link mysql
postinstall します。
$ brew postinstall mysql
インストールが完了したら、バージョンを確認します。
$ mysql --version
mysql Ver 8.0.19 for osx10.14 on x86_64 (Homebrew)
MySQL を起動します。
$ mysql.server start
Starting MySQL
SUCCESS!
MySQL の停止は以下のコマンドになります。
$ mysql.server stop
MySQL は管理者(root)のパスワードはデフォルトで設定されていません。
パスワードを変更したい場合は、root パスワードなど初期設定をします。
$ mysql_secure_installation
パスワード強度を設定する「VALIDATE PASSWORD」プラグインを利用する場合は「Y」を入力します。
Press y|Y for Yes, any other key for No:Y
パスワードの強度レベルを設定します。今回は開発なのでレベル「0」にしました。
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG:0
パスワードを入力します。
New password:
Re-enter new password:
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) :y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.
その他の設問は「y」を入力します。
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) :y
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
MySQL に管理者(root)でログインします。
$ mysql -uroot -p
$ mysql -uroot
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.19 Homebrew
...
mysql>
mysql コマンドでデータベースを作成します。
mysql> create database sample;
mysql コマンドでデータベース一覧を確認します。
mysql> show database;
...
+--------------------+
| Database |
+--------------------+
| information_schema |
| laravel_auth |
| mysql |
| performance_schema |
| sample |
| sys |
+--------------------+
...
mysql をログアウトします。
mysql> quit
Mac で MySQL を自動起動するには、brew services を利用します。
$ brew services start mysql
Homebrew のサービス一覧を確認します。
$ brew services list
Name Status User Plist
mysql started yoo /Users/yoo/Library/LaunchAgents/homebrew.mxcl.mysql.plist
php stopped
php@7.3 stopped
postgresql started yoo /Users/yoo/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
MySQL の設定ファイル my.cnf のパスを検索します。
$ mysql --help | grep my.cnf
order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf
自分の場合は /usr/local/etc/my.cnf に作成されていました。