达梦数据库联机备份和脱机备份的区别
第一部分:备份与还原核心原理
一、备份还原本质解析
本章详细介绍如何利用 DM 提供的各种工具进行备份还原与恢复的操作,包括 DIsql 工具、DMRMAN 工具、图形化客户端管理工具 MANAGER 和 CONSOLE。DIsql 工具用于执行联机的数据备份与数据还原,包括数据库备份、归档备份、表空间备份与还原、表备份与还原;DMRMAN 工具用于执行脱机的数据备份、还原与恢复,包括脱机的数据库备份、还原与恢复,脱机还原表空间,归档的备份、还原与修复;客户端工具 MANAGER 和 CONSOLE 对应命令行工具 DIsql 和 DMRMAN 的功能,分别用于联机和脱机备份还原数据。这四种工具都可以独立使用,也可以相互配合,如使用 DIsql 或 MANAGER 工具联机备份的数据库备份文件可以用 DMRMAN 或 CONSOLE 工具还原。读者在阅读完本章的内容后,就可以动手配置归档,并进行备份与还原操作了。
二、备份方式支持矩阵
类型 | 支持场景 | 关键限制 |
---|---|---|
联机备份 | • MPP:库/归档备份 • DSC:库/表空间/表备份 • PRIMARY模式 • OPEN状态 | • MOUNT/SUSPEND状态不支持 • STANDBY模式仅支持库/表空间/归档 • DDL CLONE需含归档 |
联机还原 | • 仅表级还原 • PRIMARY模式 • OPEN/NORMAL状态 | • MPP/分布式不支持 • SUSPEND状态不支持 |
脱机备份 | • MPP(单节点执行) • DSC库备份 • 异常退出后备份 | • DSC节点CKPT_LSN不一致时不支持 |
脱机还原 | • 库/表空间/归档还原 • 所有模式/状态 | 无特殊限制 |
第二部分:备份与还原支持详解
一、联机操作支持矩阵
graph TDA[联机操作] --> B[备份]A --> C[还原]B --> D[MPP环境:仅库/归档备份]B --> E[DSC环境:全类型支持]B --> F[状态要求:OPEN]C --> G[仅表级还原]C --> H[状态要求:OPEN/NORMAL]
二、关键限制说明
-
DDL CLONE特殊要求
- 必须包含归档日志
- 禁止使用
WITHOUT LOG
选项 - 示例:
-- 正确做法(含归档) BACKUP DATABASE BACKUPSET '/dm8/backup/full' DDL CLONE;-- 错误做法(将报错) BACKUP DATABASE BACKUPSET '/dm8/backup/full' DDL CLONE WITHOUT LOG;
-
DSC环境脱机备份限制
当出现CKPT_LSN不一致时:# 检查节点状态 SELECT node_name, ckpt_lsn FROM V$DSC_EP_INFO;# 若存在CKPT_LSN差异需先修复 ALTER DATABASE RECOVER STANDBY DATABASE;
第三部分:企业级备份策略(更新)
一、推荐备份方案
| 时间 | 备份类型 | 保留策略 | 存储位置要求 |
|--------|--------------|----------------|------------------------|
| 每周一 | 全量备份 | 永久保留 | 异地存储(不同介质) |
| 周二三 | 差异增量 | 保留7天 | 不同磁盘阵列 |
| 周四 | 累积增量 | 保留30天 | 对象存储 |
| 周五 | 差异增量 | 保留7天 | 分布式存储 |
| 每月1日| 脱机冷备 | 离线存储12个月 | 磁带库/光盘库 |
二、备份操作黄金法则
-
存储隔离原则
# 错误做法(同磁盘存储) /data/dmdata # 源数据目录 /data/backup # 备份目录 → 磁盘故障导致双重损失# 正确做法(跨介质存储) /ssd_array/dmdata # SSD存储 /hdd_pool/backup # HDD存储 → 物理隔离
-
命名规范
# 推荐命名(英文+数字) full_20231001.bak # ✔ 符合规范# 禁止命名(含特殊字符) 周一全备@重要数据.bak # ✘ 可能导致解析失败
第四部分:最佳实践补充
一、备份窗口选择建议
数据库类型 | 推荐时段 | 业务影响 | 备份策略 |
---|---|---|---|
OLTP系统 | 02:00-04:00 AM | 低峰期 | 自动增量备份 |
数据仓库 | 周末维护窗口 | 可停机 | 脱机全备+验证 |
7×24关键系统 | 业务低峰期轮换 | 接近零影响 | 热备+存储快照 |
二、多环境备份策略
-
MPP环境
-- 各节点独立备份 EXEC SP_INIT_MPP_BACKUP('node1,node2'); BACKUP DATABASE BACKUPSET '/backup/mpp_full';
-
DSC环境
-- 需确保所有节点OPEN SELECT status FROM V$INSTANCE; -- 协调节点执行 BACKUP DATABASE BACKUPSET '/dsc_backup/full' DSC;
三、备份验证SOP
# 1. 校验备份集完整性
./dmrman CHECK BACKUPSET '/backup/full_20231001'# 2. 模拟还原测试(每月)
./dmrman <<TEST
restore database TEST_DB.ini from backupset '/backup/full_20231001'
recover database TEST_DB.ini update db_magic
TEST# 3. 启动测试库验证
./DmServiceTESTDB start
./disql VALIDATE "SELECT COUNT(*) FROM USER_TABLES"
终极安全准则:
- 3-2-1-1-0原则:
• 3份副本
• 2种介质
• 1份异地
• 1份离线
• 0错误验证- 命名四不原则:
不含中文、不含空格、不含特殊符、不混用大小写- 存储三隔离:
物理磁盘隔离、存储类型隔离、地理位置隔离
通过严格遵循支持规范与限制条件,结合科学的备份策略,可实现RPO≈0、RTO<15分钟的企业级数据保护能力,为业务连续性提供坚实保障。