DM数据库备份还原详解

        达梦数据库提供了多种数据库备份还原方法,用户可根据不同场景自主选择。以下对DM数据库备份还原方法进行详细介绍。

目录

一、准备工作

1.环境对备份还原的限制

2.归档配置

二、Disql工具进行联机备份还原

1.数据库备份

2.表空间备份

3.表备份

4.归档备份

三、DMRMAN工具进行脱机备份还原

四、图形化工具进行备份还原

一、准备工作

1.环境对备份还原的限制

环境/状态/模式

支持与限制

联机备份

联机还原

MPP环境

仅允许库和归档备份,且各节点都会执行,生成相应的备份集,支持DDL CLONE;

不支持

DSC环境

支持库级备份、表空间备份和表备份,要求 DSC 环境的所有节点都处于 OPEN 状态;

支持

MOUNT状态

仅支持归档备份;

/

SUSPEND状态

所有备份均不支持;

所有还原均不支持

OPEN状态

支持所有备份,支持 DDL CLONE;

支持

PRIMARY模式

支持所有备份,支持 DDL CLONE;

/

STANDBY模式

仅支持库级、表空间级和归档备份,支持 DDL CLONE;

/

DDL CLONE

必须备份归档,不允许指定 WITHOUT LOG。

/

2.归档配置

       备份与恢复过程都依赖归档日志,归档日志是保证数据一致性和完整性的重要保障。配有归档日志的数据库系统在出现故障时丢失数据的可能性更小,这是因为一旦出现介质故障如磁盘损坏时,利用归档日志,系统可被恢复至故障发生的前一刻,也可以还原到指定的时间点。因此在进行备份还原操作前,要先进行归档配置。

归档配置分为本地归档和远程归档

其中本地归档配置有两种方式:联机归档配置,手动配置归档

远程归档只适用于DSC环境中。以下只介绍本地归档方法:

(1)联机归档配置

修改数据库为mount状态:SQL>alter database mount;

配置本地归档:SQL>alter database add archivelog ‘dest=/../dm_arch/arch,type=local

alter database add archivelog 'dest=/dm8/samples/ini_script,type=local,file_size=1024,space

_limit=2048';

开启归档模式:SQL> alter database archivelog;

修改数据库状态为open状态:SQL> alter database open;

(2)手动配置归档:手动编辑dmarch.ini文件,之后保存在dm.ini所在目录,dmarch.ini文件内容如下:

编辑dm.ini文件,手动修改ARCH_INI=1,并保存。

启动数据库实例,此时已运行与归档模式。

二、Disql工具进行联机备份还原

1.备份数据库

DM8的数据库备份可以设置基备份搜索目录、基备份目录、备份路径、介质类型、介质参数、备份描述、备份片限制大小、密码、压缩级别等。

常见数据库备份有完全备份和增量备份

(1)完全备份

备份:backup database full backupset '/dm8/data/bak/db_full_bak_01 ';

准备目标库:./dminit path=/dm8/data db_name=DAMENG1

脱机校验备份:RMAN>check backupset '/dm8/data/bak/db_full_bak_01 ';

还原数据库:数据库还原只能通过脱机还原

RMAN>restore database '/dm8/data/DAMENG1/dm.ini' from backupset '/dm8/data/bak

/db_full_bak_01 ';

恢复数据库:

RMAN>recover database '/dm8/data/DAMENG1/dm.ini' from backupset'/dm8/data/bak

/db_full_bak_01 ';

更新数据库:

RMAN>recover database '/dm8/data /DAMENG1/dm.ini' update db_magic;

(2)增量备份

backup database increment with backupdir '/dm8/data/bak' backupset '/dm8/data/bak/db_increment_bak_01';

2.备份表空间

(1)完全备份

例如:完全备份用户main表空间,指定base on参数执行增量备份

备份:backup tablespace main backupset '/dm8/data/bak/ts_full_bak_01 ';

还原:RMAN>restore database '/dm8/data/DMDB/dm.ini' tablespace main from backupset '/dm8/data/bak/ts_full_bak_01 ';

恢复:RMAN>recover database '/dm8/data/DMDB/dm.ini' tablespace main;

(2)增量备份

  • 不指定基备份:backup tablespace main increment backupset 'ts_increment_bak_01';
  • 利用base on 指定基备份:backup tablespace main increment base on backupset 'ts_full_bak_01' backupset 'ts_increment_bak_02';
  • 利用backupdir指定基备份搜索目录:backup tablespace main increment with backupdir '/dm8/data/bak' backupset '/dm8/data/bak/ts_full_bak_01 ';

       在A、B增量备份中,如果ts_increment_bak_02 不指定备份集 ts_full_bak_01 作为基备份,那么默认会使用最近一次的备份集 ts_increment_bak_01 作为基备份。

3.表备份

只能对用户表进行备份,表还原不需要恢复操作。但表的备份还原需要考虑两种情况:

(1)无索引和约束的表备份还原

例如:对表tab1进行备份

备份:backup table tab1 backupset '/dm8/data/bak/tab_bak_01 ';

校验备份:select SF_BAKSET_CHECK('DISK','/dm8/data/bak/tab_bak_01');

还原:restore table tab1 from backupset 'tab_bak_01';

  1. 有索引和约束的表备份还原

例如:对表tab2进行备份,表中含有索引idx1

备份:backup table tab2 backupset '/dm8/data/bak/tab_bak_02 ';

校验备份:select SF_BAKSET_CHECK('DISK','/dm8/data/bak/tab_bak_02');

还原表结构:restore table tab2 STRUCT FROM BACKUPSET '/dm8/data/bak/tab_bak_02 ';

还原表数据:restore table tab1 from backupset 'tab_bak_02';

4.归档备份

归档备份的三个前提

  • 归档文件的db_magic、permenent_magic值和库的db_magic、permanent_magic值必须一样
  • 服务器必须归档配置
  • 归档日志必须连续,若出现了不连续情况,前面的会忽略,仅备份最新的连续部分

归档备份:backup archive log all backupset '/dm8/data/bak/arch_bak_01 ';

归档还原:RMAN>restore archive log from backupset '/dm8/data/bak/arch_bak_01 ' to database '/dm8/data/DMDB/dm.ini’ overwrite 2;

RMAN>restore archive log from backupset '/dm8/data/bak/arch_bak_01 ' to archivedir '/dm8/data/DMDB/arch_dest ' overwrite 2;

归档修复:RMAN>repair archivelog database '/dm8/data/DMDB/dm.ini ';

REPAIR ARCHIVELOG DATABASE '/opt/dmdbms/data/dm.ini';

若要对确定范围内的归档进行备份

首先查看归档日志的LSN:select ARCH_LSN,CLSN,path from V$ARCH_FILE;

备份归档:backup archiveloglsn between 5578606 and 5583165 backupset '/dm8/data/bak/arch_bak_lsn_ 01';

三、DMRMAN工具进行脱机备份还原

启动DMRMAN:在bin目录下执行 ./dmrman

./dminit path=/opt/dmdbms/data db_name=DAMENG_FOR_RESTORE

在dmrman状态下进行备份还原

四、图形化工具进行备份还原

DM数据库提供了两种图形化工具进行备份还原:

manager界面进行备份还原

console界面进行备份还原

图形化界面操作较为简单,可以查看手册进行相关了解。

如果还有任何问题,欢迎到达梦云适配中心提问哦!

社区 | 达梦云适配中心 (dameng.com)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值