MySQL Docker データベース初期化
概要
開発環境が Mac を使用しているため、その他のプラットフォームでは初期デプロイ時に MySQL 初期化の問題に遭遇する可能性があり、データベースデータを再インポートする必要があります。このドキュメントでは、データベース初期化のための参照手順を提供します。
注: Mac 開発環境ではデータベース初期化は必要ありません。
手順
以下はコマンドライン操作の手順です。Navicat などの視覚的ツールを使用している場合は、データベースファイルを直接インポートすることができます。
1. データベースコンテナの起動
bash
cd upgradelink/development/mysql-8.4.3
rm -rf data
docker compose up -d2. SQL ファイルをコンテナにコピー
bash
cd ..
docker cp upgradelink-3.0.0.sql upgradelink-mysql8.4.3:/tmp/init.sql注: ファイルをコンテナの /tmp ディレクトリに配置することで、権限の問題を回避できます。
3. SQL ファイルのインポート実行
bash
docker exec upgradelink-mysql8.4.3 sh -c 'mysql -u root -p"$MYSQL_ROOT_PASSWORD" upgrade < /tmp/init.sql'注:
- パスワードはコンテナの環境変数から自動的に取得されます(手動入力は不要)
upgradeデータベースへのインポートを指定します(docker-compose の設定と一致)
4. インポート結果の確認
bash
docker exec -it upgradelink-mysql8.4.3 mysql -u user -puser_password upgradeMySQL コマンドラインに入った後、以下の確認コマンドを実行します:
sql
SHOW
TABLES;
SELECT COUNT(*)
FROM main_table_name;
EXIT;