备份与还原的概念
备份:把重要的数据复制到安全的介质上。
还原:必要的时候把以前备份的数据复制到备份的状态。
备份方式
物理备份
备份数据库(联机、脱机)
备份用户表空间(联机)
逻辑备份
Full 方式
Owner 方式
Schema 方式
Tables 方式
B树备份
备份用于表(联机)
- 结余物理备份和逻辑备份之间的一种备份实现方式
- 实现是基于DM所有的表都是以索引方式组织的
- 保证数据的无损恢复,效率高于逻辑备份
- 支持单表备份
备份类型
1、完全备份
2、增量备份
3、差异备份(不支持)
数据库备份方法
联机备份级别
开启归档
1、数据库备份(完全、增量)
2、表空间备份(完全、增量)
3、表备份
联机备份手段
- 使用管理工具图形化执行
- 使用sql语句命令行执行
自动备份
call SP_CREATE_JOB('back',1,0,'',0,0,'',0,'');
call SP_JOB_CONFIG_START('back');
call SP_ADD_JOB_STEP('back', 'b1', 5, '01000D:\达梦工作\DM8\data\test\bak', 1, 2, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('back', 'd1', 1, 2, 1, 1, 0, '13:40:40', NULL, '2020-06-23 13:40:40', NULL, '');
call SP_JOB_CONFIG_COMMIT('back'); |
脱机备份
数据库服务正常停止
数据库不需要处于归档模式
脱机备份手段:
1、通过控制台console备份
2、通过命令行工具dmrestore执行备份
逻辑备份
实现手段
- 使用管理工具进行备份
- 使用dexp命令工具
全库导出
D:\达梦工作\DM8\bin>dexp SYSDBA/SYSDBA@localhost:5236 full=y file=full_test.dmp log=full_test.log |
Owner方式
D:\达梦工作\DM8\bin>dexp.exe SYSDBA/SYSDBA@localhost:5236 file=D:\达梦工作\DM8\data\user_test.dmp log=D:\达梦工作\DM8\data\user_test.log owner=dmhr |
Schemas方式
D:\达梦工作\DM8\bin>dexp.exe SYSDBA/SYSDBA@localhost:5236 file=D:\达梦工作\DM8\data\sch_test.dmp log=D:\达梦工作\DM8\data\sch_test.log schemas=sales |
Tables方式
D:\达梦工作\DM8\bin>dexp.exe SYSDBA/SYSDBA@localhost:5236 file=D:\达梦工作\DM8\data\tab_test.dmp log=D:\达梦工作\DM8\data\tab_test.log tables=customer,salesorder_detail; |
逻辑备份还原
D:\达梦工作\DM8\bin>dimp SYSDBA/SYSDBA@localhost:5236 full=y file=full_test.dmp log=dimp_test.log |
DM7新备份还原
新备份的目的:
- 支持第三方工具,支持磁带设备
- 兼容oracle
- 性能提升 (DM7支持从库级备份中还原表空间)
新备份还原方法
备份还原工具:
Disql 工具:联机数据备份与还原,包括库备份、表空间备份与还原、表备份与还原;
DMRMAN 工具:脱机数据库备份还原与恢复;
客户端工具 MANAGER和CONSOLE:对应命令行工具DIsql和DMRMAN的功能,分别用于联机和脱机备份还原数据
开启归档
SQL> select name,arch_mode from v$database;
行号 NAME ARCH_MODE ---------- ---- --------- 1 test N
已用时间: 2.499(毫秒). 执行号:3369. SQL> alter database mount ; 操作已执行 已用时间: 00:00:02.191. 执行号:0. SQL> alter database add archivelog 'dest=D:\达梦工作\DM8\data\ARCH,type =local,file_size =1024,space_limit=2048'; 操作已执行 已用时间: 75.971(毫秒). 执行号:0. SQL> alter database archivelog; 操作已执行 已用时间: 193.013(毫秒). 执行号:0. SQL> alter database open ; 操作已执行 已用时间: 00:00:02.326. 执行号:0. |
全库备份
SQL> backup database to weekly_full_bak backupset 'D:\达梦工作\DM8\data\test\bak\' device type tape backupinfo '完全备份' maxpiecesize 300 compressed level 5 parallel 8 ; backup database to weekly_full_bak backupset 'D:\达梦工作\DM8\data\test\bak\' device type tape backupinfo '完全备份' maxpiecesize 300 compressed level 5 parallel 8 ; 第1 行附近出现错误[-8102]:并行备份仅支持磁盘(DISK)介质. 已用时间: 363.903(毫秒). 执行号:0.
SQL> backup database to weekly_full_bak backupset 'D:\达梦工作\DM8\data\test\bak\' device type disk backupinfo '完全备 份' maxpiecesize 300 compressed level 5 parallel 8 ; 操作已执行 已用时间: 00:00:14.254. 执行号:3371. |
归档备份
SQL> backup archive log all backupset 'D:\达梦工作\DM8\data\test\bak\arch_back_01'; |
备份管理
--管理备份 select * from v$backupset --显示备份集基本信息 select * from v$backupset_dbinfo --显示备份集数据库信息 select * from v$backupset_dbf --显示备份集数据文件相关信息 select * from v$backupset_arch --显示备份集归档信息 select * from v$backupset_bkp --显示备份集备份片信息 select * from v$backupset_search_dirs --显示备份集搜索目录 select * from v$backupset_table --显示表备份集中备份表信息 select * from v$backupset_subs --显示并行备份中生成的子备份集信息 |