外观
TDSQL 手动备份
手动备份类型
全量备份
特点
- 备份完整的数据库实例
- 包含所有数据和对象
- 备份时间较长
- 恢复速度较快
适用场景
- 定期的数据保护
- 重大变更前的备份
- 迁移前的准备
- 季度或年度备份
增量备份
特点
- 仅备份自上次备份以来变更的数据
- 备份时间较短
- 恢复需要基础备份和所有增量备份
- 节省存储空间
适用场景
- 日常数据保护
- 高频备份需求
- 存储空间有限
- 快速备份需求
日志备份
特点
- 备份事务日志
- 支持点-in-time恢复
- 备份频率高
- 恢复精度高
适用场景
- 关键业务数据保护
- 需要精确恢复到特定时间点
- 高可用要求
- 合规要求
控制台手动备份流程
全量备份操作
操作步骤
- 登录TDSQL控制台
- 进入「实例管理」页面
- 选择目标实例
- 点击「备份管理」→「手动备份」
- 选择备份类型为「全量备份」
- 选择备份存储位置
- 设置备份名称(可选)
- 点击「确认备份」
- 等待备份任务完成
注意事项
- 避免在业务高峰期执行全量备份
- 确保有足够的存储空间
- 记录备份任务ID和时间
- 验证备份的完整性
增量备份操作
操作步骤
- 登录TDSQL控制台
- 进入「实例管理」页面
- 选择目标实例
- 点击「备份管理」→「手动备份」
- 选择备份类型为「增量备份」
- 选择基础备份(如系统未自动选择)
- 设置备份名称(可选)
- 点击「确认备份」
- 等待备份任务完成
注意事项
- 确保存在有效的基础备份
- 增量备份依赖于前一次备份
- 定期合并增量备份
- 监控备份链的完整性
命令行手动备份
使用TDSQL CLI备份
安装和配置
bash
# 安装TDSQL CLI
pip install tdsql-cli
# 配置CLI
tdsql configure \
--endpoint <endpoint> \
--secret-id <secret-id> \
--secret-key <secret-key>执行全量备份
bash
# 执行全量备份
tdsql backup create \
--instance-id <instance-id> \
--backup-type full \
--backup-name "manual-full-backup-$(date +%Y%m%d%H%M%S)"执行增量备份
bash
# 执行增量备份
tdsql backup create \
--instance-id <instance-id> \
--backup-type incremental \
--backup-name "manual-incremental-backup-$(date +%Y%m%d%H%M%S)"使用mysqldump备份
适用场景
- 小型数据库实例
- 单库备份需求
- 迁移或测试场景
- 需要灵活的备份选项
备份命令
bash
# 全库备份
mysqldump -h <host> -P <port> -u <user> -p \
--single-transaction \
--master-data=2 \
--flush-logs \
--all-databases \
> full_backup_$(date +%Y%m%d).sql
# 单库备份
mysqldump -h <host> -P <port> -u <user> -p \
--single-transaction \
--master-data=2 \
<database-name> \
> db_backup_$(date +%Y%m%d).sql
# 压缩备份
mysqldump -h <host> -P <port> -u <user> -p \
--single-transaction \
--all-databases \
| gzip > full_backup_$(date +%Y%m%d).sql.gz手动备份最佳实践
备份策略设计
备份频率
- 全量备份:每周或每月一次
- 增量备份:每日一次或多次
- 日志备份:每小时或更频繁
备份存储
- 使用可靠的存储介质
- 实施3-2-1备份策略(3份备份,2种介质,1份离线)
- 定期验证备份的完整性
- 加密备份数据
备份时间窗口
选择原则
- 避开业务高峰期
- 考虑系统资源使用情况
- 结合恢复时间目标(RTO)
- 考虑备份完成时间
推荐时间
- 夜间(22:00-06:00)
- 周末或节假日
- 业务低峰期
- 系统维护窗口
备份验证
验证内容
- 备份文件的存在性
- 备份文件的完整性
- 备份文件的可恢复性
- 备份数据的一致性
验证方法
- 定期执行恢复测试
- 使用校验和验证备份文件
- 检查备份日志
- 抽样验证恢复的数据
备份管理
备份文件管理
文件命名规范
- 包含备份类型
- 包含备份时间
- 包含实例标识
- 便于识别和管理
示例命名
tdsql-instance1-full-backup-20231215143000.sql.gz
tdsql-instance1-incremental-backup-20231216020000.sql.gz
tdsql-instance1-log-backup-20231216030000.sql.gz备份生命周期管理
保留策略
- 全量备份:保留30天或更长
- 增量备份:保留到下一次全量备份前
- 日志备份:保留到下一次全量备份前
清理策略
- 自动清理过期备份
- 手动清理特定备份
- 归档长期备份
- 监控存储使用情况
手动备份监控
备份进度监控
监控内容
- 备份任务状态
- 备份进度百分比
- 备份数据大小
- 备份预计完成时间
监控方式
- 控制台实时监控
- 备份日志分析
- API查询
- 命令行工具
备份结果通知
通知方式
- 邮件通知
- 短信通知
- 企业微信通知
- 钉钉通知
通知内容
- 备份任务ID
- 备份类型和名称
- 备份状态
- 备份开始和结束时间
- 备份数据大小
- 备份存储位置
常见问题(FAQ)
Q1: 如何选择合适的手动备份类型?
A1: 选择手动备份类型的考虑因素:
- 备份目的:定期保护、变更前备份、迁移准备
- 数据量大小:全量备份适合中等数据量
- 备份时间窗口:增量备份时间较短
- 恢复需求:日志备份支持精确恢复
- 存储空间:增量备份节省空间
Q2: 手动备份会影响数据库性能吗?
A2: 手动备份对数据库性能的影响:
- 全量备份会消耗较多系统资源
- 增量备份影响较小
- 日志备份影响最小
- 建议在业务低峰期执行备份
- 可调整备份并行度优化性能
Q3: 如何确保手动备份的可靠性?
A3: 确保手动备份可靠性的措施:
- 定期验证备份的可恢复性
- 使用校验和验证备份文件完整性
- 存储备份到多个位置
- 加密备份数据
- 保留足够的备份副本
Q4: 手动备份和自动备份的区别是什么?
A4: 手动备份和自动备份的主要区别:
- 触发方式:手动备份由用户触发,自动备份按计划执行
- 灵活性:手动备份更灵活,可随时执行
- 适用场景:手动备份适合临时需求,自动备份适合常规保护
- 管理方式:手动备份需要用户管理,自动备份由系统管理
Q5: 如何快速执行手动备份?
A5: 快速执行手动备份的方法:
- 使用控制台的快速备份功能
- 预先配置备份模板
- 使用命令行脚本自动化
- 选择合适的备份类型
- 优化备份配置
Q6: 如何恢复手动备份?
A6: 恢复手动备份的步骤:
- 登录TDSQL控制台
- 进入「备份管理」页面
- 选择要恢复的备份文件
- 点击「恢复」按钮
- 选择恢复目标实例
- 配置恢复参数
- 确认恢复操作
- 等待恢复完成
Q7: 手动备份可以跨地域恢复吗?
A7: 手动备份跨地域恢复的情况:
- 支持跨地域恢复
- 需要确保目标地域支持TDSQL
- 可能产生跨地域数据传输费用
- 恢复时间取决于数据量和网络带宽
- 建议先复制备份到目标地域
Q8: 如何管理大量的手动备份?
A8: 管理大量手动备份的方法:
- 建立清晰的备份命名规范
- 定期清理过期备份
- 归档长期备份
- 使用备份标签进行分类
- 监控备份存储使用情况
- 建立备份管理流程
