数据库大文件备份拆分与自动切割方案
问题原因分析
- 单文件过大(如MySQL dump超过10GB)导致传输/存储困难
- 缺乏增量备份导致每次全量备份冗余
解决方案对照表
方法 | 适用场景 | 操作命令/工具 |
---|---|---|
按表拆分 | 多表独立备份 | mysqldump --tables 表1 表2 > part1.sql |
按行分割 | 单表超大 | split -l 1000000 dump.sql part_ (每100万行一切片) |
压缩切割 | 节省空间 | `tar -zcvf - dump.sql |
自动化脚本示例
bash
#!/bin/bash # 每天自动切割备份(保留7天) mysqldump -u用户 -p密码 数据库 | gzip | split -b 500m - /backups/db_$(date +%F).part_ find /backups -name "db_*" -mtime +7 -delete
更新时间:2025-06-19 22:28:29
上一篇:数据库IP如何设置更安全?Apache配置是否合理?