压缩导出与跨主机搬运要点
- 导出时接 gzip 管道,直接得到 .sql.gz,传输和存储都省空间
- 管道写法:mysqldump 输出直接喂给 gzip,再写进压缩文件
- 跨机直传:一台导出用管道喂给另一台的 mysql 客户端即可入库
- 恢复压缩文件用 gunzip 解流后接 mysql,无需先落盘
- 超大库导出记得加 --single-transaction,避免锁表影响线上读写
压缩导出与跨主机搬运示例
# 边导出边压缩
mysqldump -u root -p shop_db 用管道接 gzip 写入 shop_backup.sql.gz
# 两台机器互通时,直接把数据灌进目标库
mysqldump -u root -p shop_db 用管道接另一台主机的 mysql 客户端
# 解压并恢复到本地库
gunzip 把 shop_backup.sql.gz 解流后接 mysql -u root -p shop_db
避坑提醒:大表导出不加 --single-transaction,MyISAM 会锁全表、InnoDB 也可能拿到不一致快照。线上备份要么用事务快照,要么挑低峰期。