HOME > MySQL

巨大SQLのダンプとリストア

日常的な運用・素早いリストアも重視したい(現実的な最強候補)

最もおすすめなのは Zstd (Zstandard) です。
gzip を遥かに凌駕する圧倒的なスピードでありながら、gzip 以上の圧縮率(を実現します。

実践的なコマンド例

巨大なSQLダンプの場合、一度ディスクに未圧縮の生SQL(.sql)を書き出すと、それだけでディスクフル(容量枯渇)になる危険があります。そのため、ダンプしながらパイプ(|)で直接圧縮に流し込むのが鉄則です。
Zstd で高速・高圧縮ダンプする(推奨)

bash

# ダンプ+圧縮
mysqldump -u [ユーザー] -p [DB名] | zstd -T0 -o sns.sql.zst

# 解凍せずにそのままMySQLへ流し込んでリストア
zstdcat sns.sql.zst | mysql -u [ユーザー] -p [DB名]