使い捨て可能な MySQL の実験環境

MySQL 環境で SQL を書く練習をしたい。この環境は使い捨てにしたいので、Docker で環境を作ることにした。 Docker Hub に MySQL の公式イメージがあるので、目標は簡単に達成できると思っていたが、実際には色々と苦労したので、未来のためここに手順をメモしておく。 苦労したのは日本語の入出力まわりである。Docker イメージ側の設定、mysqld の設定、MySQL クライアントの設定のみっつが必要となる。 具体的には次のようにした。 まずは Dockerfile を適当なディレクトリに置く。内容は次の通りだ。 FROM mysql:8.0.29 RUN apt-get update && \ apt-get install -y locales && \ rm -rf /var/lib/apt/lists/* && \ echo "ja_JP.UTF-8 UTF-8" > /etc/locale.gen && \ locale-gen ja_JP.UTF-8 ENV LC_ALL ja_JP.UTF-8 RUN { \ echo '[mysqld]'; \ echo 'character-set-server=utf8mb4'; \ echo 'character_set_filesystem=utf8mb4'; \ echo 'collation-server=utf8mb4_general_ci'; \ echo 'skip-character-set-client-handshake'; \ echo '[client]'; \ echo 'default-character-set=utf8mb4'; \ } > /etc/mysql/conf. [Read More]