dmarch.ini--dba手册

Posted yangeoooo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dmarch.ini--dba手册相关的知识,希望对你有一定的参考价值。

类型比较本地归档实时归档即时归档异步归档
备库数量01~81~81~8
通过 MAL 传递数据
归档时机写入联机日志后,再写入本地归档日志文件写入联机日志前,发送到备库写入联机日志后,发送到备库定时启动
归档写入 ( 发 送)归档线程日志刷盘线程日志刷盘线程异步归档线程
数据来源RLOG_PKGRLOG_PKGRLOG_PKG本地归档文件
失败处理磁盘空间不足时,系统挂起等待用户释放出足够的磁盘空间。磁盘损坏导致写入失败时,系统会强制HALTSuspend 数据库,保持归档状态不变,等待守护进程干预Suspend 数据库,并设置归档为无效状态,等待守护进程干预不做处理,等待下次触发继续发送
备库响应时机收到立即响应事务一致模式:重演完成后响应;高性能模式:收到立即响应收到立即响应
源库模式PrimaryStandbyNormalPrimaryPrimaryPrimaryStandby
目标库模式StandbyStandbyStandby

任意一个备库的实时归档/即时归档失败(即使其他备库归档成功了),主库
都会切换为 Suspend 状态。

dmarch.ini 用于本地归档和远程归档。dmarch.ini 的配置项见表 2.4。
ARCHIVE_TIMELY:即时归档
在主库将 Redo 日志写入联机日志文件后
dmarch.ini 中的 ARCH_WAIT_APPLY 配置
项(默认值为 1)来确定,1 表示事务一致模式,0 表示高性能模式

2.2.11.8 归档状态

本地归档、实时归档和即时归档均包含两种状态:Valid 和 Invalid。异步归档只有
一种归档状态:Valid。  Valid 归档有效,正常执行各种数据库归档操作。
 Invalid 归档无效,主数据库不发送联机 Redo 日志到备数据库。

ARCHIVE_REALTIME:实时归档
实时归档是实时主备和 MPP 主备的实现基础。
主库在 Redo 日志(RLOG_PKG)写入联机日志文件前
不需要等待 Redo 日志重演结束后再响应主库
,实时归档也分为两种模式:事务一致模式和高性能模式,
dmarch.ini 中的 ARCH_WAIT_APPLY 配置项默认值为 0用高性能模式,

 事务一致模式
主库事务提交触发 Redo 日志刷盘和即时归档,备库收到主库发
送的 Redo 日志,并重演完成后再响应主库。主库收到备库响应消息后,再响应用户的提交
请求。事务一致模式下,同一个事务的 SELECT 语句无论是在主库执行,还是在备库执行,
查询结果都满足 READ COMMIT 隔离级要求。
 高性能模式
与实时归档一样,备库收到主库发送的 Redo 日志后,马上响应
主库,再启动日志重演。高性能模式下,备库与主库的数据同步存在一定延时(一般情况下
延迟时间非常短暂,用户几乎感觉不到),不能严格保证事务一致性。
事务一致模式下,主备库之间严格维护事务一致性,但主库要等备库 Redo 日志重演完
成后,再响应用户的提交请求,事务提交时间会变长,存在一定的性能损失。高性能模式则
通过牺牲事务一致性获得更高的性能和提升系统的吞吐量。用户应该根据实际情况,选择合
适的即时归档模式。

24.3.

1 本地归档
写入 REDO 日志到本地归档文件,在 REDO 日志写入日志文件后触发,由归档线程完成
本地归档动作,最多可以设置 8 个本地归档。若磁盘空间不足,所有本地归档一旦失效,系
统会被强制挂起,直到磁盘空间释放,本地归档成功后,再继续执行。

24.3.2 实时归档

在写入 REDO 日志到日志文件之前,通过 MAL 系统发送 REDO 日志到远程服务器,远程
服务器收到 REDO 日志后,返回确认消息。收到确认消息后,执行后续操作,发送 REDO 日
志失败,或从备库返回的数据库模式不是 STANDBY,将数据库切换为 SUSPEND 状态,阻塞
所有 REDO 日志的写入操作。只能配置 1 个实时归档

24.3.3 即时归档

即时归档在主库将 Redo 日志写入联机 Redo 日志文件后,再通过 MAL 系统将 Redo 日
志发送到备库。即时归档是读写分离集群的实现基础,与实时归档的主要区别是发送 Redo
日志的时机不同。一个主库可以配置 1~8 个即时备库。

24.3.4 异步归档

在设定的时间点或者每隔设定时间,启动归档 REDO 日志发送。设置定时归档,必须确
保至少有一个本地归档。系统调度线程根据设定,触发归档 REDO 日志发送事件。通过 MAL
系统,获取远程服务器的当前 LSN,生成发送归档 REDO 日志任务,加入任务队列。归档任
务线程获取任务,通过 MAL 系统,发送到远程服务器。最多可以设置 8 个异步归档。

24.3.5 远程归档

远程归档就是将写入本地归档的 REDO 日志信息,发送到远程节点,并写入远程节点的
指定归档目录中。远程归档与本地归档的主要区别是 REDO 日志写入的位置不同,本地归档
将 REDO 日志写入数据库实例所在节点的磁盘,而远程归档则将 REDO 日志写入到其他数据
库实例所在节点的指定归档目录。远程归档日志文件的命名规范和本地归档日志文件保持一
致,都是以归档名+归档文件的创建时间进行组合命名。最多可以配置 8 个远程归档。



相关说明

  1. 归档类型 ARCH_TYPE 有以下几种:
    本地归档 LOCAL(一台主库最多配 8 个)
    远程实时归档 REALTIME(一台主库最多配 8 个)
    远程异步归档 ASYNC(一台主库最多配 8 个)
    即时归档 TIMELY(一个主库最多配 8 个)
    远程归档 REMOTE(一个主库最多配 8 个)
  2. 配置名[ARCHIVE_*]表示归档名,在配置文件中必须唯一。
  3. 不能存在相同实例名的不同归档;
  4. 不能存在 DEST 相同的不同归档实例;
  5. ARCH_TIMER_NAME 为定制的定时器名称,定时器配置见 dmtimer.ini;
  6. ARCH_SPACE_LIMIT 表示归档文件的磁盘空间限制,如果归档文件总大小超过这
    个值,则在生成新归档文件前会删除最老的一个归档文件。

以上是关于dmarch.ini--dba手册的主要内容,如果未能解决你的问题,请参考以下文章

layoutSubviews drawRect调用时机

程序员跳槽成功手册——薪酬篇

java基础之变量初始化时机

web图片资源加载与渲染时机笔记

数据库事务——快照读与当前读

数据库事务——快照读与当前读