暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

达梦数据库--物理备份

原创 2021-09-22
1540

备份

数据库备份类型:物理备份和逻辑备份
物理备份:是指拷贝数据文件中的有效的数据页。
逻辑备份:是导出表的结构,数据 insert 语句等。

物理备份分为:热备(联机备份,数据库开启状态)和冷备(脱机备份,数据库关闭状态)

物理备份也分完全备份和增量备份
增量备份:是在前一次完全备份或增量备份的基础上,只备份新增的或修改的有效的数据页。
增量备份又分为累积增量备份和差异增量备份。
差异增量备份:基备份集可以是全量备份,也可以是增量备份。
累积增量备份:基备份集只能是全量备份集。

达梦数据库的物理备份,默认使用达梦AP 辅助进程,所以物理备份时需要保证 AP 服务是开启状态的。

查看 AP 服务是否开启(三种方法)

$ ps -ef | grep dmap
图片.png

#systemctl status DmAPService.service
图片.png

使用 DM 服务查看器
#cd /dm8/tool
#./dmservice.sh
图片.png

----查看备份的默认路径和默认是否使用达梦AP辅助进程
select * from v$dm_ini t where t.PARA_NAME in ( ‘BAK_PATH’, ‘BAK_USE_AP’);
图片.png

BAK_USE_AP的值为1,表示使用达梦AP辅助进程进行备份。

脱机备份与还原数据库

两种方式:DMRMAN工具、DM控制台console工具

----停数据库服务
$ DmServiceDMSERVER status
$ DmServiceDMSERVER stop

---- 通过 DMRMAN 命令行工具来备份
$ dmrman
RMAN> backup database ‘/dm8/data/DAMENG/dm.ini’;
图片.png

----指定备份集名称和备份集路径
RMAN> backup database ‘/dm8/data/DAMENG/dm.ini’ full to FULLBACK_DMRMAN backupset ‘/dm8/backup/dmrman/fullback_dmrman’;

---- 通过 DM 控制台 console 图形化界面来备份
图片.png

DM8 数据库库级和表空间级的还原只能在脱机状态下还原和恢复
----模拟故障,删除SYSTEM.DBF数据文件,启动数据库失败
图片.png

----基于备份集将数据库还原到备份的时刻
RMAN> restore database ‘/dm8/data/DAMENG/dm.ini’ from backupset ‘/dm8/data/DAMENG/bak/console’;
图片.png

---- 基于归档日志将数据库恢复到最新状态
RMAN> recover database ‘/dm8/data/DAMENG/dm.ini’ with archivedir ‘/dm8/data/DAMENG’;
图片.png

---- 库级还原和恢复需要更新数据库魔数
RMAN> recover database ‘/dm8/data/DAMENG/dm.ini’ update db_magic;
图片.png

数据库永久魔数(不变)
select permanent_magic;

数据库魔数(每经过一次库级还原和恢复都会更新一次)
select db_magic from v$rlog;

表空间还原和恢复(备份集的数据库魔数要与目标库(被还原库)一致)

RMAN> restore database ‘/dm8/data/DAMENG/dm.ini’ tablespace tbstest from backupset ‘/dm8/data/DAMENG/bak/console’;

表空间恢复需要根据归档恢复到最新的状态
RMAN> recover database ‘/dm8/data/DAMENG/dm.ini’ tablespace tbstest with archivedir ‘/dm8/data/DAMENG’;

基于归档恢复,可以将数据库恢复到最新的状态(完全恢复),也可以将数据库恢复到指定的时间点或者指定的 LSN(不完全恢复)。
基于备份集的恢复,是将数据库恢复至备份结束的时间点。
不完全恢复的使用场景: 数据库人工误操作删除了部分重要的表或重要的数据,可以新建一个库进行数据恢复, 然后手工导出找回。
完全恢复的使用场景: 物理故障,磁盘损坏,数据文件丢失。

联机备份与还原数据库

联机备份是数据库启动状态下的备份,联机备份需要数据库开启归档状态。
备份方式:1、通过 sql 语句 2、DM 管理工具图形化界面

全库备份
默认全量备份
backup database;

增加 increment 表示增量备份,默认为差异增量备份
backup database increment;

使用backupset指定备份集路径
backup database increment backupset ‘/dm8/backup/online/incrback01’;

使用cumulative指定为累积增量备份,使用to指定备份集名称
backup database increment cumulative to incrback01 backupset ‘/dm8/backup/online/incrback02’;

表空间备份(可使用 backupset 指定备份集路径等)
注意,DM8 表空间只能联机备份
backup tablespace TBSTEST;

备份集管理相关函数

----查看备份集信息
select * from v$backupset;

----备份集管理相关函数
select * from v$ifun t where name like ‘%BAKSET%’;
SF_BAKSET_BACKUP_DIR_ADD – 添加备份集目录(仅针对当前会话生效)
SF_BAKSET_BACKUP_DIR_REMOVE – 删除备份集目录
SF_BAKSET_BACKUP_DIR_REMOVE_ALL
SF_BAKSET_CHECK --备份集校验
SF_BAKSET_REMOVE – --备份集校验
SF_BAKSET_REMOVE_BATCH – 备份集批量校验

添加备份目录
call SF_BAKSET_BACKUP_DIR_ADD(‘DISK’, ‘/dm8/backup/online’);
备份集校验
select SF_BAKSET_check(‘DISK’,’/dm8/backup/online/incrback02’);

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论