暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
Oracle Data Guard 理论知识.docx
978
12页
83次
2024-07-11
5墨值下载
Oracle Data Guard
理论知识

Data Gurad
Stream
Oracle
高可用性体系中的三种工具,每个工具即可以独
立应用,也可以相互配合。 他们各自的侧重点不同,适用场景也不同。

它的强项在于解决单点故障和负载均衡,因此
RAC
方案常用于
7*24
的核心系统,
RAC
方案中的数据只有一份,尽管可以通过
RAID
等机制可以避免存储故障,但是数据
本身是没有冗余的,容易形成单点故障。

通过冗余数据来提供数据保护,
Data Gurad
通过日志同步机制保证冗余
数据和主数据之前的同步,这种同步可以是实时,延时,同步,异步多种形式。
Data
Gurad
常用于异地容灾和小企业的高可用性方案,虽然可以在
Standby
机器上执行只读查询,
从而分散
Primary
数据库的性能压力,但是
Data Gurad
决不是性能解决方案。

是以
Oracle Advanced Queue
为基础实现的数据同步,提供了多种级别的灵活
配置,并且
Oracle
提供了丰富的
API
等开发支持,
Stream
更适用在应用层面的数据共享。
Data Gurad
环境中,至少有两个数据库,一个处于
Open
状态对外提供服务,这个
数据库叫作
Primary Database
。 第二个处于恢复状态,叫作
Standby Database
。 运行时
primary Database
对外提供服务,用户在
Primary Database
上进行操作,操作被记录在联机
日志和归档日志中,这些日志通过网络传递给
Standby Database
。 这个日志会在
Standby
Database
上重演,从而实现
Primary Database
Standby Database
的数据同步。

对这一过程进一步的优化设计,使得日志的传递,恢复工作更
加自动化,智能化,并且提供一系列参数和命令简化了
DBA
工作。
如果是可预见因素需要关闭
Primary Database
,比如软硬件升级,可以把
Standby
Database
切换为
Primary Database
继续对外服务,这样即减少了服务停止时间,并且数据不
会丢失。如果异常原因导致
Primary Database
不可用,也可以把
Standby Database
强制切换
Primary Database
继续对外服务,这时数据损失成都和配置的数据保护级别有关系。因此
Primary
Standby
只是一个角色概念,并不固定在某个数据库中。
一.
Data Guard
架构

架构可以按照功能分成
3
个部分:
日志发送(
Redo Send
日志接收(
Redo Receive
日志应用
Redo Apply
1.
日志发送(
Redo Send

运行过程中,会源源产生
Redo
日志,这些日
志需要发送到
Standy Database
。 这个发动作可以
Primary Database
LGWR
或者
ARCH
进程成, 不同的归档的地可以使用不同的方,但是对
于一个的地,只能用一种方选择哪个进程对数据保护能力和系统可用
性有很大区别。
1.1
使用
ARCH
进程

断产生
Redo Log
,这些日志被
LGWR
进程写到
联机日志。
)当联机日志被写满后,会发日志切换
Log Switch
,并且会
发本地归档,本地归档置是
LOG_ARCHIVE_DEST_1='LOCATION=/path'
这种式定的。
如:
alter system set log_archive_dest_1 = 'LOCATION=/u01/arch'

)完成本地归档,联机日志可以被覆盖重用。
ARCH
进程通过
Net
把归档日志发
Standby Database
 
Remote File Server
进程。
!
Standby Database
RFS
进程把接收的日志写入到归档日志。
"
Standby Database
MRP(
#
anaged Recovery Process
$
进程


)或者
LSP
进程
%&
Standby Database
上应用这些日志,进
而同步数据。
ARCH
式传
Standby Redologs
直接保存成归档件存
Standby
说明
逻辑
Standby
接收后将其转换成
SQL
语句,在
Standby
数据库上执行
SQL
语句实现同
步,这种方式叫
SQL Apply
Standby
接收完
Primary
数据库成的
REDO
数据,以介质恢复的方式实现同步,
这种方式也叫
Redo Apply
注意创建逻辑
Standby
数据库要先创建一个
Standby
数据库,然后再将其转换成逻辑
Standby
数据库。
使用
ARCH
进程传递最大问题在于
Primary Database
只有在发归档时会发
Standby Database
。 如果
Primary Database
异常机,联机日志中的
Redo
会丢
失,因此使用
ARCH
进程无法避免数据丢失问题,要避免数据丢失,就必须使用
LGWR
,而使用
LGWR
SYNC
同步
ASYNC
异步两种方式。
缺省方式
Primary Database
使用的是
ARCH
进程,参数设置如
alter system set log_archive_dest_2 = 'SERVICE=
'
'

1.2
使用
LGWR
进程的
SYNC
方式

产生
Redo
日志要同时写道日志件和网络。也
LGWR
进程把日志写到本地日志件的同时要发给本地的
LNSn
Network Server Process
再由
&()
LGWR Network Server process
程把日志通过网络发程的的地,每个的地对应一个
LNS
进程,
多个
LNS
进程能并行工作。
&*
必须待写入本地日志件操作和通过
LNSn
进程的网络传
都成功,
Primary Database
上的能提,这也是
SYNC
含义所在。
)
RFS
进程把接收到的日志写入到
Standby Redo
Log
日志中。

的日志切换也会
Standby Database
上的日志切
换,即
Standby Database
Standby Redo Log
的归档,然后触
Standby
Database
MRP
或者
LSP
进程恢复归档日志。
因为
Primary Database
Redo
是实时传递的,于是
Standby Database
以使用两种恢复方
实时恢复
Real-Time Apply
: 只要
RFS
把日志写入
Standby Redo
Log
会立即进行恢复
归档恢复: 在成对
Standby Redo Log
归档才触发恢复。

默认使用
ARCH
进程,如果使用
LGWR
进程必须明确指定。使
LGWR SYNC
方式时,可以同时使用
NET_TIMEOUT
参数,这个参数单代表
如果多时间网络发没有应,
LGWR
进程会抛出错误示例
of 12
5墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜