参考文档《DM8备份恢复手册》
一、备份还原版本说明
备份还原 V1.0
备份还原V1.0指DM7早期的备份还原,不是基于备份集组织的备份。V1.0版本使用dmbackup工具执行脱机备份,使用dmrestore工具执行脱机还原。
备份还原 V2.0
引入备份片、元数据文件、备份集等概念,提供第三方备份(TAPE类型)接口,支持RAC备份。使用DMRMAN工具进行脱机备份还原。
V2.0的备份还原实现策略有两种:dmap插件方式和无插件方式。用户可通过DM.IN参数bak_use_ap来选择(dmrman使用参数use_ap),bak_use_ap取值1、2。默认为1。
1: DMAP插件方式,可支持第三方备份(指定DEVICE TYPE为TAPE)。DMAP插件执行,改造了备份还原任务子系统,允许指定并行度,大幅提升了备份还原的效率,特别是加密、压缩的处理效率。如果选择使用DMAP插件,执行备份还原之前就必须启动DMAP服务。安装达梦数据库以后,DMAP服务会自动启动。如果需要手动启动,有两种途径,一是启动DM服务查看器中的DmAPService。二是通过手动启动DMAP执行码实现。
2: 无插件方式,不依赖DMAP,由主进程(dmserver、dmrman)自身执行备份还原,但不支持第三方备份(指定 DEVICE TYPE为TAPE)。
版本控制参数
通过设置DM的INI参数BAK_POLICY选择备份策略。BAK_POLICY可取值0、1或2,默认为0,具体介绍如下:
0: 表示同时支持V1.0和V2.0版本。这里的同时支持表示用户如果使用V1.0的语法或者工具,则DM服务器按照V1.0的策略执行;若用户使用 V2.0的语法或者工具,则DM服务器按照V2.0执行。但是V1.0与V2.0不能混用,若使用V1.0生成的备份不能使用V2.0进行还原,也不能在V1.0 的基备份上使用V2.0进行增量备份,反之亦然,这些操作都会报错。
1: 表示只支持v1.0版本
2: 表示只支持v2.0版本
本次测试主要使用dmrman工具即备份还原V2.0。dmrestore工具只在dm7早期版本里面继续使用,后续新的版本以及dm8后续版本已不再使用。
二、物理备份还原说明
1、达梦物理备份的方式有两种。一种是脱机(停机)备份,另一种是联机备份,但是对于物理备份的恢复只能使用脱机恢复。
2、必须开启归档日志。
脱机备份常用选项(非全部)
DATABASE:必选参数。指定还原目标库的INI文件路径。
FULL:备份类型。FULL表示完全备份,可不指定,DMRMAN会默认为完全备份。
INCREMENT:备份类型。INCREMENT表示增量备份,若要执行增量备份必须指定该参数。
WITH BACKUPDIR:用于增量备份中,指定基备份的搜索目录,最大长度为256个字节。若不指定,自动在默认备份目录下搜索基备份。如果基备份不在默认的备份目录下,增量备份必须指定该参数。
CUMULATIVE:用于增量备份中,指明为累积增量备份类型,若不指定则缺省为差异增量备份类型。
BASE ON BACKUPSET:用于增量备份中,为增量备份指定基备份集目录。,如果没有指定基备份集,则会自动搜索一个最近可用的备份集作为基备份集。
TO:指定生成备份名称。若未指定,系统随机生成,默认备份名格式为:DB_库名_备份类型_备份时间。
BACKUPSET:指定当前备份集生成目录。若指定为相对路径,则在默认备份路径中生成备份集。
MAXPIECESIZE:最大备份片文件大小上限,以M为单位,最小128M,32位系统最大2G,64位系统最大128G。
COMPRESSED:取值范围0~9。0表示不压缩,1表示1级压缩,9表示9级压缩。压缩级别越高,压缩越慢,但压缩比越高。若未指定,但指定COMPRESSED,则默认1;否则,默认0。
PARALLEL: 指定并行备份的<并行数>和READ SIZE<拆分块大小>
联机备份常用选项(非全部)
BACKUPINFO:添加备份描述信息,最大长度支持256字节。
MAXPIECESIZE:指定了单个备份片文件大小的上限,单位为M,最小为128M,32位系统最大可设置为2G,64位系统最大可设置为128G。如果不设置32系统默认为2G,64位系统默认为4G。[BACKUP V2.0]
MAXSIZE:最大备份文件大小, 以M为单位,取值范围33M~2G。[BACKUP V1.0]
COMPRESSED:指定COMPRESSED参数后备份集会先被压缩然后再写到磁盘或磁带。压缩选项有不同的压缩级别可以选择,取值范围为0~9。0表示不压缩,1表示1级压缩,9表示9级压缩。压缩级别越高,压缩越慢,但压缩比越高。
PARALLEL:对库级和表空间级的并行备份,由用户指定的并行数和实际可使用的最大并行数决定,而实际可使用的最大并行数由数据文件的个数决定。
IDENTIFIED BY: 设置备份密码。
关于增量备份说明
库备份和表空间备份支持增量备份,表备份不支持增量备份。
增量备份分为:差异增量备份和累积增量备份,默认为差异增量备份。
(1) 差异增量备份
差异增量备份的基备份既可以是一个完全备份集,也可以是一个增量备份集。
利用增量备份进行还原操作时,要求其基备份必须是完整的;如果差异增量备份的基备份本身也是一个增量备份,那么同样要求其基备份是完整的;任何一个增量备份,最终都是以一个完全备份作为其基备份。因此,完全备份是增量备份的基础。
(2) 累积增量备份
累积增量备份的基备份只能是完全备份集,而不能是增量备份集。
增量备份时,并不关心其基备份集是脱机备份生成的,还是联机备份生成的。增量备份的基备份集既可以是脱机备份生成的, 也可以是联机备份生成的,脱机增量备份的基备份集可以是联机备份生成的,联机增量备份的基备份集也可以是脱机备份生成的。
增量还原过程中隐含了一个完全还原操作。如果增量备份集的基备份集被删除了,那么单独使用这个增量备份集是无法进行还原操作的。
三、物理备份还原示例
以下操作环境为:数据库归档已开启,dmap已启动运行。
3.1 脱机备份
数据库实例已关闭
3.1.1 全备
命令:
[dmdba@dm8dw02 ~]$ cd $DM_HOME/bin
[dmdba@dm8dw02 bin]$./dmrman
RMAN> BACKUP DATABASE '/dm8/data/TEST/dm.ini' FULL BACKUPSET '/dm8/dmbak/db_full_bak_01';
或者
./dmrman CTLSTMT="BACKUP DATABASE '/dm8/data/TEST/dm.ini' FULL BACKUPSET '/dm8/dmbak/db_full_bak_01'"
示例:
[dmdba@dm8dw02 ~]$ cd /dm8/dmdbms/bin
[dmdba@dm8dw02 bin]$ ./dmrman
dmrman V8
RMAN> BACKUP DATABASE '/dm8/data/TEST/dm.ini' FULL BACKUPSET '/dm8/dmbak/db_full_bak_01'
BACKUP DATABASE '/dm8/data/TEST/dm.ini' FULL BACKUPSET '/dm8/dmbak/db_full_bak_01'
file dm.key not found, use default license!
Database mode = 0, oguid = 0
EP[0]'s cur_lsn[75954]
B