达梦数据库物理备份恢复介绍

参考文档《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
达梦数据库备份方法主要包括物理备份和逻辑备份两种方式,每种方式都有其适用场景和操作流程。 ### 物理备份 物理备份是直接对数据库的数据文件进行备份,它分为**全量备份**和**增量备份**。物理备份又可以进一步分为**联机备份**和**脱机备份**。 - **全量备份**是指将整个数据库的数据文件完整地复制到一个备份集中。全量备份的优点是可以快速恢复整个数据库,缺点是占用的存储空间较大。在达梦数据库中,可以通过执行 `BACKUP DATABASE` 命令来完成全量备份。例如: ```sql BACKUP DATABASE BACKUPSET '/data/dmdbms/backup/full_bak_2021091701'; ``` 此外,对于表级别的物理备份,可以使用 `backup table` 命令来指定具体的表进行备份。例如: ```sql backup table "SYSDBA"."TEST1" to "TAB_BTREE_20221126_234343_164773" backupset '/home/dmdba/dmdbms/data/DAMENG/DAMENG/bak/TAB_TEST1_BTREE_20221126_234343_164773' device type disk; ``` - **增量备份**则是只备份自上次备份以来发生变化的数据。这种方式可以减少备份所需的时间和存储空间,但在恢复时需要依赖之前的备份集。达梦数据库支持增量备份,但具体的操作命令需要根据实际需求进行配置。 在进行物理备份之前,通常需要确保数据库处于归档模式,以便能够捕获备份期间产生的所有事务日志。归档模式的开启步骤如下: ```sql alter database mount; alter database archivelog; alter database add archivelog type=local,dest=/home/dmdba/dmdbms/data/DAMENG/DAMENG/arch,file_size=64,space_limit=10240'; alter database open; ``` ### 逻辑备份 逻辑备份主要通过 `dexp` 或 `dexdp` 工具将数据库中的数据导出为文件,适用于特定对象(如库级、模式级、表级)的备份。逻辑备份关注的是数据内容,而不是数据的物理存储位置。这种方式的优点是可以灵活选择需要备份的对象,缺点是恢复速度相对较慢。 例如,使用 `dexp` 工具进行逻辑备份的基本命令如下: ```bash dexp userid=SYSDBA/SYSDBA@localhost:5236 file=/home/dmdba/export.dmp log=export.log ``` ### 备份注意事项 1. **归档日志**:在进行物理备份时,为了确保数据的一致性,必须启用归档模式。这样可以确保在备份过程中产生的事务日志也被记录下来,从而在恢复时能够保证数据的完整性。 2. **备份集管理**:备份集是物理备份的核心概念,它包含了备份过程中生成的所有文件。备份集的管理和维护非常重要,确保备份集的安全性和可访问性是DBA的重要职责。 3. **备份策略**:根据业务需求制定合理的备份策略,包括备份频率、备份窗口、备份保留周期等。合理的备份策略可以有效降低数据丢失的风险。 4. **备份验证**:定期验证备份集的完整性和可用性,确保在需要恢复时能够顺利进行。 ### 备份与还原 在进行备份后,如果数据库发生故障,可以通过还原备份集将数据恢复备份结束时的状态。还原过程通常包括以下几个步骤: 1. **停止数据库服务**:在进行还原操作之前,需要先停止数据库服务,以确保数据的一致性。 2. **恢复备份集**:使用相应的命令或工具将备份集中的数据恢复到数据库中。 3. **应用归档日志**:如果备份过程中启用了归档模式,则还需要应用备份期间产生的归档日志,以确保数据的完整性。 4. **启动数据库服务**:恢复完成后,重新启动数据库服务,验证数据的完整性和一致性。 ### 相关问题 1. 如何在达梦数据库中进行增量备份? 2. 达梦数据库的逻辑备份物理备份有何区别? 3. 在进行物理备份时,为什么需要启用归档模式? 4. 如何验证达梦数据库备份集的完整性和可用性? 5. 达梦数据库备份策略应该如何制定?
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值