ちょっとした検証とかで、MySQLコンテナを利用することが多いので、サッと使う時のノウハウ集。
DB立ち上げ
1 | docker volume create my-volume |
ポイント
--secure-file-priv=''
指定でLOAD DATA
命令を利用可能に。--rm
で無駄なコンテナプロセスを残さない。root
の空パスワードを許可
もし、データを綺麗にリフレッシュしたくなったら、 docker volume rm my-volume
して作り直す。
DB接続
ローカルには、MySQL Client をインストールしといてね。
1 | $ mysql -h 127.0.0.1 -u root --local-infile=1 |
クライアント側からの --local-infile
許可を指定して接続しておく。
テーブル作成
細かい文字列をよく忘れるのでアンチョコ。
1 | mysql> CREATE DATABASE hoge DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; |
ローカルCSVファイルからのデータ投入。
1 | mysql> SET GLOBAL local_infile=1; |
(......)
この箇所は、CSV列に対応するフィールド名を入れる。
例 (id, name, created_at)
※ このエントリは、雑で便利な利用法が思いついたら随時追記する。