Dockerを活用して手軽にMySQL環境を構築する
今回は、MySQLサーバーをDockerで立ち上げ、テーブル作成を行うまでの手順を解説します。この方法は開発環境の構築を簡単にし、さまざまなプロジェクトでのデータベース管理を効率化します。
目次
はじめに
今回は、MySQLサーバーをDockerで立ち上げ、テーブル作成を行うまでの手順を解説します。この方法は開発環境の構築を簡単にし、さまざまなプロジェクトでのデータベース管理を効率化します。
前提条件
・Docker Desktopがインストールされていること
インストールがまだの方はこちらから行えます。自身のPC環境に応じてDocker Desktopをインストールする必要があります。
・Dockerの基本操作についての理解
ステップ1: MySQLイメージの取得
まずは、MySQLのDockerイメージを取得します。
docker pull mysql:8.2.0特定のバージョンが必要な場合は、mysql:<バージョン>の形で指定します。
今回はバージョン8.2.0を使用します。
またDocker hubでは多くのユーザーがDockerイメージを共有しているため、状況にあわせてダウンロードして自身の環境で使うこともできます。
数秒ほどでイメージの取得が完了します。

ステップ2: MySQLコンテナの作成と起動
次に、MySQLコンテナを作成し、起動します。
docker run --name コンテナ名 -e MYSQL_ROOT_PASSWORD=パスワード -d mysql--name mysql-server: コンテナに名前を割り当てます。-e MYSQL_ROOT_PASSWORD=my-secret-pw: rootユーザーのパスワードを設定します。-d: デタッチモードで実行し、バックグラウンドでコンテナを起動します。
正しくコンテナが作成されていることが確認できます。

ステップ3: MySQLコンテナへの接続
コンテナが起動したら、MySQLに接続します。
docker exec -it mysql-server mysql -uroot -pここで、ステップ2で設定したパスワードを入力します。
以下のように表示されてれば、成功です。

ステップ4: テーブルの作成
MySQLプロンプトで、新しいデータベースとテーブルを作成します。
CREATE DATABASE mydb;
USE mydb;
CREATE TABLE mytable (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);CREATE DATABASE mydb;:mydbという名前のデータベースを作成します。USE mydb;: 作成したデータベースを選択します。CREATE TABLE mytable (...):mytableというテーブルを作成し、いくつかの列を定義します。
テーブル構造を確認
DESCRIBE mytable: でテーブル構造を確認することができます。

ステップ5: コンテナの停止
作業が終了したら、コンテナを停止します。
docker stop mysql-serverまたDocker DesktopからGUIでコンテナの起動・停止・削除を行うこともできます。

まとめ
Dockerを用いることで、MySQL環境のセットアップが簡単かつ迅速に行えます。これにより、開発環境やテスト環境でのデータベースの構築が容易になり、環境依存の問題を軽減できます。また、Dockerを利用することで、異なるバージョンのMySQLを同時に稼働させることも可能になります。
