浅说DM达梦8的备份还原

浅说DM达梦8的备份还原

备份与还原简介

归档日志

在归档模式下,联机REDO 日志被连续拷贝到归档日志后就生成了归档日志文件。
归档日志文件以归档时间命名。例如: ARCHIVE_LOCAL1_20160217171507968.log
开启归档模式会对系统性能产生一定影响,但更安全。

检查点与日志序列号

检查点的功能是按照数据页第一次被修改的顺序,依次将BUFFER缓冲区中的脏页写入磁盘,并在这个过程中动态调整CKPT_LSN值,释放日志空间。
LSN (LOG SEQUENCE NUMBER),即日志序列号,表示REDO 日志产生的顺序,系统为每个REDO 日志分配一个LSN值。

备份集

一个备份集对应一次完整备份,为一个目录,由一个或多个备份片和一个元数据文件组成。

备份片

备份片(后缀为.bak)是用来存储备份数据的文件。备份时,目标数据文件内容或归档日志内容经过处理后,都会存放到这些备份片文件中。

元数据

元数据文件(后缀为.meta)用来存储备份信息。包括:
备份集本身相关的信息
备份源库的建库参数信息
备份集中备份数据文件信息
备份集中备份片的信息

DM8中对备份的划分标准有如下几种:

1、备份组织形式:物理备份和逻辑备份
2、备份时,数据库是否运行:联机备份和脱机备份
3、备份的粒度大小:库备份、表空间备份、归档备份和表备份
归档备份支持联机和脱机;
归档备份会把收集到的归档文件,备份到备份集中的每一个备份片。必要的时候可以使用归档备份集,还原归档。
4.、备份数据的一致性:一致性备份和非一致性备份
5.、备份数据的完整性:完全备份和增量备份

恢复

恢复是重做 本地归档日志 或者 备份集中备份的归档日志 的过程。
没有经过恢复的还原数据库是不允许启动的。
表空间和表还原均为联机执行,都不需要再执行恢复操作。此处恢复是指数据库恢复操作。
分类:
根据恢复过程中是否重做归档,及重做归档日志的来源,可将恢复分三类:
(1)更新DB_MAGIC
DB_MAGIC记录数据库的变化,当数据库经过备份还原并恢复后,DB_MAGIC就会改变(SELECT DB_MAGIC FROM V$RLOG;)
在不需要重做归档日志恢复数据的情况下,可以直接更新DB_MAGIC 来完成最后的恢复工作。
(2)从备份集恢复
利用备份集中备份日志的恢复过程。
(3)从归档恢复
利用重做本地归档日志来恢复数据的过程。
从归档恢复可恢复到最新状态,或指定的时间点、指定的LSN值

备份还原工具

Disql 工具:联机数据备份与还原,包括库备份、表空间备份与还原、表备份与还原;
DMRMAN 工具:脱机数据库备份还原与恢复;
客户端工具 MANAGER和CONSOLE:对应命令行工具DIsql和DMRMAN的功能,分别用于联机和脱机备份还原数据。

1、库级备份

SQL>  backup database  backupset '/dm8/bak/full_bak01';
操作已执行
已用时间: 00:00:06.346. 执行号:300.
SQL> 

在这里插入图片描述

也可指定备份集路径、设置备份名、指定介质类型、添加备份描述、限制备份片大小、备份压缩、并行备份:`在这里插入代码片

SQL> BACKUP DATABASE TO WEEKLY_FULL_BAK BACKUPSET ‘/home/dm_bak/db_bak_3_02’ DEVICE TYPE TAPE  BACKUPINFO ‘完全备份’MAXPIECESIZE 300  COMPRESSED LEVEL 5 PARALLEL 8; 

注意:指定的备份名、加密密码、加密算法名长度限制为128字节;
MOUNT模式下不允许数据库备份。

可指定DDL_CLONE(数据库克隆)参数,只备份定义不备份数据。该参数只用于数据库级完全备份中。

SQL>  backup database DDL_CLONE backupset '/dm8/bak/full_bak02';
操作已执行
已用时间: 00:00:03.721. 执行号:301.
SQL> 

1.2、库级增量备份

SQL> BACKUP DATABASE INCREMENT WITH BACKUPDIR '/dm8/bak' backupset '/dm8/bak/inc_bak_01';
操作已执行
已用时间: 00:00:07.088. 执行号:302.
SQL> 

1.3、表空间备份

最简单的表空间备份语句:

SQL>  BACKUP TABLESPACE MAIN BACKUPSET 'ts_bak_01'; 

指定基备份目录(不指定则搜索最近一次完全/增量备份作基备份)

SQL>BACKUP TABLESPACE MAIN INCREMENT BASE ON BACKUPSET'ts_full_bak_01' BACKUPSET 'ts_increment_bak_02';

(其他备份选项设置参考前述库备份)
完全备份(FULL参数可省略,默认为完全备份)

SQL> BACKUP TABLESPACE MAIN FULL BACKUPSET '/home/dm_bak/ts_full_bak_01'; 
	

增量备份

SQL> BACKUP TABLESPACE MAIN INCREMENT WITH BACKUPDIR '/home/dm_bak' BACKUPSET '/home/dm_bak/ts_increment_bak_02';

注意:备机状态/MOUNT状态/MPP和RAC环境均不允许表空间备份。

1.4、表备份

表备份均为联机完全备份,不需要备份归档日志,不存在增量备份之说。

 SQL>   BACKUP TABLE TAB_01 BACKUPSET 'tab_bak_01'; 

(其他备份选项设置参考前述库备份)
注:备机状态/MOUNT状态/MPP和RAC环境均不允许表备份还原。

4、归档备份

归档备份拷贝指定归档目录下的所有的归档文件到备份集中。
备份归档需要服务器配置归档。

 SQL>BACKUP ARCHIVE LOG ALL BACKUPSET 'arch_bak_01'; 

2、还原

2.1、表空间还原

系统处于OPEN状态下
可使用表空间完全备份、表空间增量备份、数据库备份文件还原表空间

RMAN> restore database '/dm8/data/DAMENG/dm.ini' tablespace main from backupset '/dm8/databak/main.tabp.bak0407'
RMAN> recover database '/dm8/data/DAMENG/dm.ini' tablespace main

2.2、表还原:

不需配置归档
系统处于OPEN状态下
表还原是联机完全备份还原,因此还原后不需要恢复

SQL> restore  table table_name  from backupset '/dm8/bak/tab_bak01'

2.3、库还原

RMAN>RESTORE DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' FROM BACKUPSET '/home/dm_bak/db_full_bak_for_restore'; 

从备份集恢复

RMAN>RECOVER DATABASE '/opt/dmdbms/data/DAMENG_FOR_RESTORE/dm.ini' FROM BACKUPSET '/home/dm_bak/db_full_bak_for_recover_backupset'; 

从归档恢复:
从归档恢复是利用重做本地归档日志来恢复数据的过程。
允许恢复到指定的时间点及指定的LSN值。

查看备份集的数据库信息,获取源库的DB_MAGIC–

RMAN>SHOW BACKUPSET '/home/dm_bak/db_full_bak_for_recover_arch' INFO DB;

利用归档恢复数据库

RMAN>RECOVER DATABASE 
'/opt/dmdbms/data/DAMENG_FOR_RESTORE/dm.ini' WITH ARCHIVEDIR'/home/dm_arch/arch' USE DB_MAGIC 1447060265;

不论使用哪种数据恢复,最后都需要更新DB_MAGIC 完成数据库恢复。

RMAN>RECOVER DATABASE '/opt/dmdbms/data/DAMENG_FOR_RESTORE/dm.ini' UPDATE DB_MAGIC; 

3、DMRMAN工具

DMRMAN(DM RECOVERY MANEGER)是 DM8的脱机备份还原管理工具,统一 负责库级脱机备份、脱机还原、数据库恢复等相关操作

3.1、DMRMAN备份数据库

数据库处于脱机状态。
创建完全备份:

RMAN>BACKUP DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' FULL BACKUPSET '/home/dm_bak/db_full_bak_01';

创建增量备份:

RMAN>BACKUP DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' INCREMENT WITH BACKUPDIR '/home/dm_bak ' BACKUPSET '/home/dm_bak/db_increment_bak_02';

3.2、备份归档

创建归档备份:

RMAN>BACKUP ARCHIVE LOG ALL DATABASE '/opt/dmdbms/data/DAMENG/dm.ini'
BACKUPSET '/home/dm_bak/arch_all_bak_01'; 

创建设置条件的归档备份:
通过设置 LSN 或者时间点,控制需要备份归档的范围。

  RMAN>BACKUP ARCHIVE LOG LSN BETWEEN 50000 AND 20000 DATABASE '/opt/dmdbms/data//dm.inDAMENGi'  
BACKUPSET '/home/dm_bak/db_increment_bak_02';

3.3、管理备份

1、查看备份集信息:

RMAN>SHOW BACKUPSET '/home/dm_bak/db_bak_for_show_01';

2、校验特定备份集:

RMAN>CHECK BACKUPSET 'db_bak_for_check_02' DATABASE '/opt/dmdbms/data/DAMENG/dm.ini'; 

3、删除备份集:

RMAN>REMOVE BACKUPSET '/home/dm_bak/db_bak_for_remove_01'; 

批量删除所有备份集:

RMAN>REMOVE BACKUPSETS WITH BACKUPDIR '/home/dm_bak'; 

批量删除指定时间之前的备份集:

RMAN>REMOVE BACKUPSETS WITH BACKUPDIR '/home/dm_bak' UNTIL TIME'2015-11-1 00:00:00'; 

更多资料可参考 达梦技术社区:https://eco.dameng.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值