达梦数据库dmrman备份与还原(一)

1 备份还原简介
        DM 数据库中的数据存储在数据库的物理数据文件中,数据文件按照页、簇和段的方式
进行管理,数据页是最小的数据存储单元。任何一个对 DM 数据库的操作,归根结底都是对
某个数据文件页的读写操作
        DM 备份的本质就是从数据库文件中拷贝有效的数据页保存到备份集中,这里的
有效数据页包括数据文件的描述页和被分配使用的数据页
2、表空间
        
名称作用重要性是否备份
SYSTEM 表空间
存放了 DM 数据库全局字典信息和全局系统数据,默认对应数据文件 SYSTEM.DBF
5定期
ROLL 表空间
存放 DM 数据库运行过程中产生的所有回滚记录,不论修改哪一个表空间,生成的回滚记录都是写入 ROLL 表空间,该表空间由系统自动维护,
默认数据文件为 ROLL.DBF
4不备份
MAIN 表空间
混合表空间。在创建用户时,如果没有指定默认表空间,系统自动指定 MAIN 表空间为用户默认的表空间。 MAIN 表空间的默认数据文件为 MAIN.DBF
5定期
        
自定义表空间
用户自建的用于业务、迁移、测试等用途建立的表空间5定期
TEMP 表空间
存放临时表数据以及数据库运行过程中产生的临时数据,
若数据库重启,保存在 TEMP 表空间中
的所有数据都会丢失。 TEMP 表空间的默认数据文件为 TEMP.DBF
4不备份

3、影响备份与还原有效性的两类重要日志

        重做日志

        记录了所有物理页的修改,基本信息包括操作类型、 表空间号、文件号、页号、页内偏移、实际数据等。DM 数据库默认包含两个扩展名为 log 的日志文件,用来保存 REDO 日志,称为联机重 做日志文件。这两个文件循环使用。任何数据页从内存缓冲区写入磁盘之前,必须保证其对 应的 REDO 日志已经写入到联机日志文件

        归档日志

        系统将 REDO 日志先写入联机日志文件后,根据归档的配置情况,异步地将 REDO 日志再写入到归档日志中。归档日志一般与redo日志相等或稍大些

        归档日志默认命名:     

           primary/Normal 模式库归档日志文件的命名规则是:                        ARCH_NAME_DB_MAGIC[SEQNO]_日期时间.log
        比如: ARCHIVE_LOCAL1_0x567891[0]_2018-05-30_10-35-34.lo
        ARCH_NAME :dmarch.ini 中配置的 LOCAL/REMOTE 归档名称,
        DB_MAGIC :生成日志的数据库魔数,
        SEQNO  :DSC 节点号,
        日期时间:归档日志文件的创建时间
4、LSN介绍:影响备份还原的还原点,非常重要
        
        LSN( Log Sequence Number )是由系统自动维护的 Bigint 类型数值,具有自动
递增、全局唯一特性,每一个 LSN 值代表着 DM 系统内部产生的一个物理事务。物理事务
Physical Transaction ,简称 ptx )是数据库内部一系列修改物理数据页操作的集合,是数据库对于事务管理的一个标记
 
名称        描述场景
CUR_LSN
系统已经分配的最大 LSN 值。物理事务提交时,系统会为其分配 一个唯一的 LSN 值,大小等于 CUR_LSN + 1 ,然后再修改 CUR_LSN=CUR_LSN+1
事务提交后就会+1,值一般最大
FLUSH_LSN
是已经发起日志刷盘请求,但还没有真正写入联机 Redo 日志文件的 最大 LSN 值。
commit后,准备写入的联机redo,一般与cur_lsn相同
FILE_LSN
是已经写入联机 Redo 日志文件的最大 LSN
比LUSH_LSN与cur_lsn小
CKPT_LSN
检查点 LSN ,所有 LSN <= CKPT_LSN 的物理事务修改的数据页, 都已经从 Buffer 缓冲区写入磁盘, CKPT_LSN 由检查点线程负责调整
数据页写入磁盘的最大值
APPLY_LSN
数据库还原恢复后已经写入联机 Redo 日志文件的日志包的原始 最大 LSN
RPKG_LSN
是数据库还原恢复后已经重演日志的最大 LSN

        一般情况下:ckpt_lsn<file_lsn<flush_lsn=cur_lsn

5、包序号

        RLOG_PKG 都有对应的序号属性,称之为包序号( PKG SEQNO ),日志包生成时
按照序号连续递增。包序号包括本地包序号( LSEQ )和全局包序号( GSEQ ),本地包序号
是节点内唯一、连续递增的值,用于校验联机日志连续性;全局包序号由数据守护集群的主
备库共同维护,具有全局唯一、连续、递增的特性,用于校验归档日志的连续性。
DM 数 据 库 中 与 全 局 包 序 号 相 关 的 信 息 , 可 以 通 过 查 询 V$RLOG
V$RAPPLY_PARALLEL_INFO 表来获取
        
名称        描述
CUR_SEQ
系统已经分配的最大全局包序号。 RLOG_PKG 写入联机日志文件前,
系统会为其分配一个唯一的全局包序号
FILE_SEQ
已经写入联机 Redo 日志文件的最大全局包序号
APPLY_SEQ
数据库还原恢复后已经写入联机 Redo 日志文件的原始最大全局
包序号
RPKG_SEQ
数据库还原恢复后已经重演日志的最大全局包序号。 DSC 集群的每
一个节点独立维护 RPKG_SEQ

        包序号的理解是数据库对于事务日志,也是组合成包的形式再进行写入日志文件,是数据库系统用来处理日志的管理单元。

6、检查点     

        检查点(checkpoint )是一个数据库事件,它的功能是按照数据页的修改顺序,依次
BUFFER 缓冲区中的脏页写入磁盘,并在这个过程中动态调整 CKPT_LSN 值,释放日志
空间
        
        DM 的检查点分为两种:完全检查点和部分检查点:
         完全检查点 :会将内存缓冲区中的所有脏页写入磁盘,并调整 CKPT_LSN ,在数
 据库正常关闭时会产生一个完全检查点。
        部分检查点 : 根 据 dm.ini 配 置 文 件 中 的 参 数 CKPT_FLUSH_RATE
CKPT_FLUSH_PAGES ,确定每次检查点刷脏页的数量。执行部分检查点的过程中, DDL/DML
操作都可以正常执行, DM 系统中绝大多数情况下触发的都是部分检查点
   
       

更多内容,请查看达梦云适配官网

https://eco.dameng.com

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值