Dockerで構築したMySQLデータベースのバックアップ・リストア

2024/05/18に公開

設定ファイルにバックアップの設定入れておく。

my.cnf
[mysqldump]
single-transaction
events
routines
triggers
skip-disable-keys

zipやgzより圧縮率、速度が優れているZStandardを入れておく。

# Linux
sudo apt install zstd
# Mac
brew install zstd
# データベースのコンテナ名を確認する
docker ps

# DBバックアップ
docker exec コンテナ名 mysqldump -u DBユーザ名 -pDBパスワード --all-databases | zstd > dump.sql.zst

# DBリストア
zstdcat dump.sql.zst | docker exec -i コンテナ名 mysql -u DBユーザ名 -pDBパスワード

Discussion