MySQL Ver 8.0 ローカル環境構築
MySQL Ver 8.0
Docker を使ったローカル環境構築手順
実行環境
- Mac OS mojave 10.14.6
- Docker Desktop 20.10.5
- Docker Compose 1.28.5
ディレクトリ構成
. ├── docker-compose.yml ├── conf │ └── my.cnf ├── data │ └── xxx └── logs ├── mysql-error.log ├── mysql-query.log └── mysql-slow.log
方法
- docker-compose.yml ファイルを作成
docker-compose.yml
version: "3" services: db: image: mysql:8.0 volumes: - ./conf/my.cnf:/etc/mysql/conf.d/my.cnf - ./data:/var/lib/mysql - ./logs:/var/log/mysql environment: - MYSQL_ROOT_PASSWORD=rootpass - TZ=Asia/Tokyo ports: - 3306:3306 # ホストポート:コンテナポート # コンテナ名を明示的に指定する container_name: mysql8-container
- MySQL設定ファイル作成
./conf/my.cnf
# MySQLサーバーへの設定 [mysqld] # 文字コード/照合順序の設定 character-set-server = utf8mb4 collation-server = utf8mb4_bin # タイムゾーンの設定 default-time-zone = SYSTEM log_timestamps = SYSTEM # デフォルト認証プラグインの設定 default-authentication-plugin = mysql_native_password # エラーログの設定 log-error = /var/log/mysql/mysql-error.log # スロークエリログの設定 slow_query_log = 1 slow_query_log_file = /var/log/mysql/mysql-slow.log long_query_time = 5.0 log_queries_not_using_indexes = 0 # 実行ログの設定 general_log = 1 general_log_file = /var/log/mysql/mysql-query.log # mysqlオプションの設定 [mysql] # 文字コードの設定 default-character-set = utf8mb4 # mysqlクライアントツールの設定 [client] # 文字コードの設定 default-character-set = utf8mb4
- コマンド実行
# 起動 $ docker-compose up # 停止 $ docker-compose down # ログイン $ docker exec -it mysql8-container bash $ mysql -u root -prootpass