Oracle DGHA
介绍 内容
 DGHA 是什么?
 现有的 DATAGUARD HA 方案
 DGHA 的特性
 DGHA 所需条件
 DGHA :典型切换场景
 DGHA :故障转移过程
 DGHA :典型的时间点
 DGHA : Failo...
DGHA 是什么 ?
• DGHA: 此脚本针对 oracle dataguard 设计,使用共享存储存放
redo,spfile 以及 controlfile 从而达到了切换数据零丢失。
• 目的 : 自动管理主库备库切换以便最少化当机时间
...
现 有的 DATAGUARD HA 方案
• DataGuard Broker
-- 只能 failover 到某个指定实例
-- 是 oracle 官方方案
• 共享存储模式
-- 需要共享一份数据,需要存储
-- 不好利用 PCIE 等高性...
DGHA 的特性
• 主服务器的自动监控和故障转移
• 切换数据零丢失
• Power off 功能,避免脑裂
• 详细的日志输出
• 短信和邮件报警功能
DGHA 所需条件
• SSH 公钥验证
DGHA 管理节点通过 ssh 连接 oracle 服务器,进行验证和一些管理操作。
为了使这些过程自动化,推荐使用 SSH 公钥验证密码(也可以使用密码
模式进行)
• 操作系统
目前只测试过 Lin...
DGHA :典型切换场 景
• 监控整个集群:定期 check 主库
• 如果检测到 primary 故障,启动切换
• 检查备库是否达到要求
• 关闭主库,断电
• 用主库的 redo 等替换备库的, recover 备库,然后打开
• 发送...
DGHA :故障转 移过 程
DGHA :故障转 移过 程
正常的检查过程:
• 主备库为 DG , online redo , spfile 和 control 文件存放
于共享存储,存储对主备服务器都可见
• 更新主库心跳表,判断主库是否可用
• 如果主库是可 ssh ...
DGHA :故障转 移过 程
切换过程:
• 关闭原主库实例, Power off 原主库服务器
• 备份原备库的 online redo 和 control 文件;拷贝原主库的
online redo 和 control file , spf...
DGHA :典型的时间 点
• 一般情况下完成整个过程需 3-5 分钟
• check 频率一般设置为 10 秒
• 检测主库一般为 1 分钟: 3 次 check+ 连接超时 +ssh 超时
• 主库关闭 + 备库检测 +power off ...
DGHA : Failover 机制
主库检测频率

主库连续 3 次,每次间隔一定时间(比如 10s )

主库检测类型

长连接 UPDATE HACHECK SET CHECK_TIME=SYSDATE
本地 UPDATE HACHECK...
Oracle RAC one node HA
Oracle RAC One Node is
integrated with Oracle
Clusterware which
monitors the health of the
database...
参考资 料
1 http://search.cpan.org/~salva/Net-OpenSSH0.60/lib/Net/OpenSSH.pm
2 MHA mha4mysql-manager0.55samplesscriptspower_ma...
Upcoming SlideShare
Loading in …5
×

Oracle dgha

1,827 views

Published on

Published in: Technology, News & Politics
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,827
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
18
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Oracle dgha

  1. 1. Oracle DGHA
  2. 2. 介绍 内容  DGHA 是什么?  现有的 DATAGUARD HA 方案  DGHA 的特性  DGHA 所需条件  DGHA :典型切换场景  DGHA :故障转移过程  DGHA :典型的时间点  DGHA : Failover 机制  Oracle RAC one node HA
  3. 3. DGHA 是什么 ? • DGHA: 此脚本针对 oracle dataguard 设计,使用共享存储存放 redo,spfile 以及 controlfile 从而达到了切换数据零丢失。 • 目的 : 自动管理主库备库切换以便最少化当机时间 • 由一个的 Perl 主脚本和几个 shell 脚本组成 • 可采用集中管理模式,可以管理多套数据库集群。 • 原有主备库不需要安装额外的软件模块
  4. 4. 现 有的 DATAGUARD HA 方案 • DataGuard Broker -- 只能 failover 到某个指定实例 -- 是 oracle 官方方案 • 共享存储模式 -- 需要共享一份数据,需要存储 -- 不好利用 PCIE 等高性能 IO 设备 • Dataguard 模式 -- 简单、不需要存储 -- 可能有数据丢失,可能会破坏整个集群 • 共享 redo/controlfile/spfile 模式 -- 需要小的存储 -- 数据零丢失,不会破坏集群
  5. 5. DGHA 的特性 • 主服务器的自动监控和故障转移 • 切换数据零丢失 • Power off 功能,避免脑裂 • 详细的日志输出 • 短信和邮件报警功能
  6. 6. DGHA 所需条件 • SSH 公钥验证 DGHA 管理节点通过 ssh 连接 oracle 服务器,进行验证和一些管理操作。 为了使这些过程自动化,推荐使用 SSH 公钥验证密码(也可以使用密码 模式进行) • 操作系统 目前只测试过 Linux 系统 • 主备库需要共享存储来存放 redo 、 controlfile 、 spfile • 依赖模块 Net::OpenSSH DBD::Oracle Log::Dispatch
  7. 7. DGHA :典型切换场 景 • 监控整个集群:定期 check 主库 • 如果检测到 primary 故障,启动切换 • 检查备库是否达到要求 • 关闭主库,断电 • 用主库的 redo 等替换备库的, recover 备库,然后打开 • 发送 Email failover 报告 , 停止监控
  8. 8. DGHA :故障转 移过 程
  9. 9. DGHA :故障转 移过 程 正常的检查过程: • 主备库为 DG , online redo , spfile 和 control 文件存放 于共享存储,存储对主备服务器都可见 • 更新主库心跳表,判断主库是否可用 • 如果主库是可 ssh 的,到主库本地登录检查( avoid listener problem or processes exceeded )
  10. 10. DGHA :故障转 移过 程 切换过程: • 关闭原主库实例, Power off 原主库服务器 • 备份原备库的 online redo 和 control 文件;拷贝原主库的 online redo 和 control file , spfile • 备库应用原主库 online redo 恢复,保证数据零丢失 • 将备库切换到主库 , 其他备库同步新的主库
  11. 11. DGHA :典型的时间 点 • 一般情况下完成整个过程需 3-5 分钟 • check 频率一般设置为 10 秒 • 检测主库一般为 1 分钟: 3 次 check+ 连接超时 +ssh 超时 • 主库关闭 + 备库检测 +power off 一般为 1-2 分钟 • 备库关闭 + 恢复 + 打开一般为 1-2 分钟
  12. 12. DGHA : Failover 机制 主库检测频率 主库连续 3 次,每次间隔一定时间(比如 10s ) 主库检测类型 长连接 UPDATE HACHECK SET CHECK_TIME=SYSDATE 本地 UPDATE HACHECK2 SET CHECK_TIME=SYSDATE 备库 lag 检测 最大延迟 3 分钟 本地检测最大重试次数( for maximum number of processes (xxx) exceeded ) 最大次数 8 次 Power off 状态检测 最大次数 8 次 Ssh 超时时间 每次为 5 秒,重试 3 次
  13. 13. Oracle RAC one node HA Oracle RAC One Node is integrated with Oracle Clusterware which monitors the health of the database and ensures database service availability. In the event of a failure, Oracle RAC One Node will detect the failure and either restart the failed database, or fail it over to another server.
  14. 14. 参考资 料 1 http://search.cpan.org/~salva/Net-OpenSSH0.60/lib/Net/OpenSSH.pm 2 MHA mha4mysql-manager0.55samplesscriptspower_manager.pl 3 https://code.google.com/p/mysql-master-ha/

×