環境
- MacOS Big Sur 11.6
目的
- 好きなようにSQLイジイジしたい
すること
- Docker-composeでMySqlコンテナを起動する
- MySQL Workbenchで接続する
- MySQL WorkbenchでSQLをexportする
- MySQL WorkbenchでSQLをimportする
Docker-composeでMySQLコンテナを起動する
- dockerコンテナを立ち上げるまでこれ通りに行う
docker
|---mysql
|---data
|---sql
% mkdir docker
% mkdir docker/mysql
% mkdir docker/mysql/data
% mkdir docker/mysql/sql
- mysql/my.cnfを作成
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
[client]
default-character-set=utf8mb4
- ルートにdocker-compose.ymlを作成
version: '3'
services:
mysqldb:
image: mysql:5.7
container_name: mysql_container
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: my_testdb
MYSQL_USER: docker
MYSQL_PASSWORD: docker
TZ: 'Asia/Tokyo'
volumes:
- ./docker/db/data:/var/lib/mysql
- ./docker/db/my.cnf:/etc/mysql/conf.d/my.cnf
- ./docker/db/sql:/docker-entrypoint-initdb.d
ports:
- "3306:3306"
command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
- Docker起動
- ルートでコンテナ立ち上げ
% docker-compose up -d
- コンテナ確認
% docker ps
% docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d9fb41109241 mysql:5.7 "docker-entrypoint.s…" 26 minutes ago Up 26 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mysql_container
MySQL Workbenchで接続する
-
こちらのサイトからダウンロードする
-
以下の画像のように設定する
-
右下の Test Connectionで接続を確認する
- パスワードは docker-compose.ymlで設定した
MYSQL_ROOT_PASSWORD: root
- 接続が成功すると以下の画像が表示される
MySQL WorkbenchでSQLをexportする
- Server→Data Exportでdumpする
- ExportするSchemaを選択する
- Start Exportでファイルが保存される
MySQL WorkbenchでSQLをimportする
- 右クリックで Create Shemaを選択する
- Shema名を入力して、右下のApplyを押しShemaを作成する
- Server→Data Importで先程のdumpフォルダを選択する
以上、SQLでいじいじできるようになりました。