跳转至内容

RAC 攻击 - Oracle 集群数据库实战/集群软件调用

来自维基教科书,开放书籍,共建世界


本实验的目的是演示 Oracle 快速应用程序通知 (FAN) 调用。在 11g 之前的版本中,这些也被称为 Oracle 集群软件调用。

此功能是 Oracle 集群软件的一个相对鲜为人知的特性,它可以触发一个脚本(或一个完整的目录)来执行您可能希望在集群范围事件发生时执行的任何任务。

有关更多信息,请参阅此处的文档:http://download.oracle.com/docs/cd/B28359_01/rac.111/b28254/hafeats.htm#BABGCEBF

在本练习中,我们将配置每个节点上的一些 FAN 调用脚本,然后触发各种集群事件以查看每个事件如何触发调用脚本。



  1. 从一个正常的、运行的集群开始,两个节点都启动并运行。
  2. 从每个服务器上的一个 shell 提示符(以 oracle 用户身份登录)开始,导航到 /u01/grid/oracle/product/11.2.0/grid_1/racg/usrco。使用 vi(或您喜欢的编辑器)在其中创建一个名为 callout1.sh 的文件。文件内容应为:#!/bin/ksh umask 022 FAN_LOGFILE=/tmp/`hostname`_uptime.log echo $* "reported="`date` >> $FAN_LOGFILE &


  3. 确保使用以下命令将文件的权限设置为 755:[oracle@<node_name> ~]$ chmod 755 \ > /u01/grid/oracle/product/11.2.0/grid_1/racg/usrcocallout1.sh
  4. 监视每个节点上集群软件的日志文件。在每个节点上,启动一个新窗口并运行以下命令:[oracle@<node_name> ~]$ tail –f \ /u01/grid/oracle/product/11.2.0/grid_1/log/`hostname -s`/crsd/crsd.log
  5. 接下来,我们需要触发一个事件,该事件将导致调用触发。一个这样的事件是节点关闭。关闭节点 collabn2 上的集群软件。[root@collabn2 ~]# crsctl stop crs 正在停止资源。这可能需要几分钟。成功停止了 Oracle 集群软件资源正在停止集群同步服务。正在关闭集群同步服务守护进程。已成功发出关闭请求。
  6. 执行完此命令后,观察您在步骤 2 中开始监视的日志文件。由于我们在测试集群上设置了很长的超时时间,您可能需要等待几分钟才能看到任何内容。
    • 您最终应该观察到表明节点已失败的条目,紧随其后的是在 /tmp/<hostname>_uptime.log 文件中放置的一个条目,表明节点已关闭。
    • 注意哪些成员运行集群软件调用脚本。(一个幸存的成员可以运行命令来通知客户端和/或应用程序服务器集群节点之一已关闭。)
    您应该在 /tmp/*.log 文件中看到这些消息:NODE VERSION=1.0 host=collabn2 incarn=0 status=nodedown reason=public_nw_down timestamp=30-Aug-2009 01:56:12 reported=Sun Aug 30 01:56:13 CDT 2009 NODE VERSION=1.0 host=collabn2 incarn=147028525 status=nodedown reason=member_leave timestamp=30-Aug-2009 01:57:19 reported=Sun Aug 30 01:57:20 CDT 2009
  7. 重新启动集群软件。是否有节点启动事件?[root@collabn2 bin]# crsctl start crs
  8. 尝试关闭其中一台虚拟机 - 与之前的测试有什么不同?如果您禁用 Linux 网络接口或 VMware 网络卡会怎样?
  9. 您可以根据需要进行更多测试。另一个有趣的事件是数据库实例意外关闭。安装数据库后,请返回本实验测试这种情况。[oracle@collabn2 ~]$ sqlplus "/ as sysdba" SQL*Plus: Release 11.1.0.6.0 - Production on Fri Aug 1 14:49:29 2008 Copyright (c) 1982, 2007, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production With the Partitioning, Real Application Clusters, OLAP, Data Mining and Real Application Testing options SQL> shutdown abort; ORACLE 实例已关闭。SQL> INSTANCE VERSION=1.0 service=RAC.vm.ardentperf.com database=RAC instance=RAC2 host=collabn2 status=down reason=user timestamp=01-Aug-2008 12:34:02 reported=Fri Aug 1 12:34:03 CDT 2008


华夏公益教科书