目录
OCR
备份
日志
检测
导入与恢复
查看主和镜像
voting disk
查看
VIPCA
首页 数据库 mysql教程 【ORACLE RAC】root.sh原理,ocr管理

【ORACLE RAC】root.sh原理,ocr管理

Jun 07, 2016 pm 03:06 PM
ocr oracle rac 原理 管理

************************************************************************ ****原文: blog.csdn.net/clark_xu 徐长亮的专栏 ************************************************************************ Root.sh的原理 1. In root.sh script, it will ad

************************************************************************ ****原文:blog.csdn.net/clark_xu  徐长亮的专栏 ************************************************************************ Root.sh的原理

1.      In root.sh script, it will addCRS related entry in /etc/inittab,

2.      Root.sh运行

/oracle/product/crs/install/rootinstall

/oracle/product/crs/install/rootconfig

3.      Rootinstall作用:

a)        /oracle/product/crs/bin/crs*的程序改成root 555

b)        /oracle/product/crs/bin/crsd改为 744

c)        建立路径:/oracle/product/crs/crs/init

d)        /oracle/product/crs/crs/public被所有读写 777.

e)        Crs/evm  crs/evm/init 750

f)         Crs/css crs/css/initcrs/css/log  crs/css/auth  711

4.      Rootconfig的作用

a)        概述:

                        i.             1) Stop if any GSDs are runningfrom 9.x oracle homes

                      ii.             2) Initialize new OCR device orupgrade the existing OCR device

                     iii.             3) Setup OCR for running CRSstack

                     iv.             4) Copy the CRS init script toinit.d for init process to start

                      v.              5) Start the CRS stack

                     vi.              6) Configure NodeApps if CRS is up and runningon all nodes

b)        Setup ocr

                        i.             $CH/bin/clscfg -install -nn$CRS_NODE_NAME_LIST -pn $CRS_PRIVATE_NAME_LIST \

      $HOSTNAMES_ARGS-o $CH -c $CRS_CLUSTER_NAME -l "$CRS_LANGUAGE_ID" -q $CRS_V

OTING_DISKS \

      $CLSCFG_MISCNT

c)        更改/tmp/.oracle的属性

                        i.             复杂# basic copies first...

                      ii.             $CP $CH/evm/admin/init.evmd$ID/init.evmd || { $ECHO $?; exit 1; }

                     iii.             $CP $CH/css/admin/init.cssd $ID/init.cssd|| { $ECHO $?; exit 1; }

                     iv.             $CP $CH/crs/admin/init.crsd$ID/init.crsd || { $ECHO $?; exit 1; }

                      v.             $CP $CH/crs/admin/init.crs$ID/init.crs || { $ECHO $?; exit 1; }

d)        启动crs stack过程

                        i.             # Prepare to start the daemons.    /init.crs start

                      ii.             #Check to see if they are goingto start.

$ID/init.cssd startcheck CSS

          $CRSCTL check install -wait 600

     检查VIP$CH/bin/vipca -silent -nodelist $CRS_NODELIST -nodevips$CRS_NODEVIPS

5.      Init.crs

a)        概述

                        i.             #    init.crs start       manual startup of the CRS stack

                      ii.             #    init.crs stop        shuts down the CRS stack

                     iii.             #    init.crs disable     prevents CRS stack from starting at boottime

                     iv.             #    init.crs enable      allows CRS stack to start at boot time

b)        cssd and evmd. evmd should beshutdown before crsd.

6.      Init.cssd

a)        [root@host1 etc]# ps -ef | grep-v grep | grep init.cssd

b)        root      2598    1  0 08:16 ?        00:00:11 /bin/sh /etc/init.d/init.cssdfatal

c)        root      3014 2598  0 08:17 ?        00:00:00 /bin/sh /etc/init.d/init.cssddaemon

d)        [root@host1 etc]# pstree 2598-a

OCR

1.定义

集群注册表(Oracle ClusterRegistryOCR):维护集群的配置信息及集群中任何集群数据库的配置信息。OCR也管理那些Oracle Clusterware控制的相关进程的相关信息。OCR将配置信息存储在一个目录树结构中的一系列关键字-值对中(key-value pairs)。OCR必须位于集群中所有结点可同时访问的共享磁盘中。Oracle Clusterware可使用多重OCRmultiplex或称为多路复用)。Oracle建议使用此特性以保证高可用性。你可以在联机时替换一个故障的OCR,可通过支持的API(如企业管理器、srvctldbca)来更新OCR

备份

[root@host1 crs]# ls

backup00.ocr  backup01.ocr day_.ocr  day.ocr  OCRDUMPFILE week.ocr

[root@host1 crs]# pwd

/oracle/product/crs/cdata/crs

Oracle 4个小时对其做一次备份,并且保留最后的3个备份,以及前一天,前一周的最后一个备份。只有一个节点能对OCR Disk进行读写操作,这个节点叫作Master Node,所有节点都会在内存中保留一份OCR的拷贝。

日志

/oracle/product/crs/log/host1/client/路径下面

OCR磁盘最多只能有两个,一个PrimaryOCR和一个Mirror OCR

/oracle/product/crs/cdata/crs /OCRDUMPFILE文件中存放ocr注册表信息。

检测

cluvfy comp ocr -n all

导入与恢复

[root@host1 oracle]#/oracle/product/crs/bin/ocrconfig -import /oracle/ocr.exp

 [root@host1oracle]# /oracle/product/crs/bin/ocrconfig -export /oracle/ocr.exp

恢复OCR文件:ocrconfig-restore /u01/app/oracle/product/10.2.0/crs_1/cdata/crs/backup00.ocr

添加OCR文件,crs必须启动,否则会遇到PROT-1错误:(PROT-1:Failed to initialize ocrconfig

查看主和镜像

[oracle@host1 crs]$ cat /etc/oracle/ocr.loc

ocrconfig_loc=/dev/raw/raw1

ocrmirrorconfig_loc=/dev/raw/raw2

local_only=FALSE

voting disk

查看

[oracle@host1 crs]$ crsctl query cssvotedisk

 0.    0    /dev/raw/raw3

 1.    0    /dev/raw/raw4

 2.    0    /dev/raw/raw5

 

located 3 votedisk(s).

VIPCA

出于种种原因我们可能需要为已安装的Oracle集群软件修改其使用的公用或私有网络所使用的网络接口(How to Change Interconnect/Public Interface IP or Subnet in OracleClusterware),这些共有或私有网络(public/private network)被保存在ocr中,我们需要以root用户的身份执行oifcfg命令来对这些网络接口信息进行修改:

/* 使用ocrdump命令转储ocr信息 */

 

[oracle@vrh1 ~]$ ocrdump ocr

 

[oracle@vrh1 ~]$ cat ocr

 

[SYSTEM.css.interfaces]UNDEF

[SYSTEM.css.interfaces.global]UNDEF

[SYSTEM.css.interfaces.global.eth0]UNDEF

[SYSTEM.css.interfaces.global.eth0.131|d32|d1|d0]UNDEF

[SYSTEM.css.interfaces.global.eth0.131|d32|d1|d0]ORATEXT: public

 

[SYSTEM.css.interfaces.global.eth1]UNDEF

[SYSTEM.css.interfaces.global.eth1.131|d33|d1|d0]UNDEF:

[SYSTEM.css.interfaces.global.eth1.131|d33|d1|d0]ORATEXT: cluster_interconnect

 

.............

 

/* 实际上cssmisscount参数和votingdisk所在的位置也存在ocr文件中  */

 

[SYSTEM.css.misscount]UB4 (10) : 60

[SYSTEM.css.diskfile]ORATEXT :/dev/raw/raw2

 

1.首先我们可以通过oifcfg getif了解当前的public/interconnect网络配置情况:

[root@vrh1 ~]# who am i

root    pts/1        2011-04-18 18:23(192.168.0.1)

 

[root@vrh1 ~]# cd $ORA_CRS_HOME/bin

 

[root@vrh1 bin]# oifcfg getif

eth0 131.32.1.0  global  public

eth1 131.33.1.0  global  cluster_interconnect

 

/* 可以看到这里分别用131.32.1/2网段配置了publiccluster_interconnect网络  */

 

2.确认在/etc/hosts文件中为新的网络接口IP做了必要的修改,之后我们要保证当前CRS已经启动(否则将出现PRIF-10: failed to initialize the cluster registry错误而无法配置),使用oifcfgsetif命令首先添加新的public公用网络接口:

[root@vrh1 bin]# oifcfg delif -global eth0

 

/* 首先删除旧有的公用网络接口信息  */

 

[root@vrh1 bin]# oifcfg setif -globaleth0/192.168.1.0:public

 

/* 注意这里制定192.168.1.0这个网段即可,不用输入完整的ip */

 

/* 因为以上操作是global全局操作,在单个节点完成即可 */

 

3.修改内联网络(cluster_interconnect)接口的方法也是类似的:

[root@vrh1 bin]# oifcfg delif -global eth1

 

[root@vrh1 bin]# oifcfg setif -globaleth1/192.168.0.0:cluster_interconnect

 

/* public network配置时类似指定网段即可  */

 

4.确认网络接口的修改情况,以及当前数据库使用的inter connecter状况:

[oracle@vrh1 ~]$ oifcfg getif

eth0 192.168.1.0  global  public

eth1 192.168.0.0  global  cluster_interconnect

 

SQL> select * from x$skgxpia;

 

ADDR           INDX    INST_ID PUB_SKGXPI PICKED_SKGXPIA

-------- ---------- ---------- ---------------------------------------------

NAME_SKGXPIA    IP_SKGXPIA

--------------- ----------------

4572EC54          0          1 N          OSD

eth1            131.33.1.107

 

/* 可以看到当前数据库实例仍使用旧有的interconnect网络 */

 

[root@vrh1 ~]# crsctl stop crs

 

[root@vrh1 ~]# crsctl start crs

 

[oracle@vrh1 ~]$ sqlplus / as sysdba

 

Oracle Database 10g Enterprise EditionRelease 10.2.0.4.0 - Production

With the Partitioning, Real ApplicationClusters, OLAP, Data Mining

and Real Application Testing options

 

SQL>

SQL> select * from x$skgxpia;

 

ADDR           INDX    INST_ID PUB_SKGXPI PICKED_SKGXPIA

-------- ---------- ---------- ---------------------------------------------

NAME_SKGXPIA    IP_SKGXPIA

--------------- ----------------

4572EC54          0          1 N          OSD

eth1            192.168.0.107

 

/* 这里需要重启CRS后实例才能正确使用更新后的clusterinterconnect网络接口 */

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

oracle打不开怎么办 oracle打不开怎么办 Apr 11, 2025 pm 10:06 PM

Oracle 打不开的解决办法包括:1. 启动数据库服务;2. 启动监听器;3. 检查端口冲突;4. 正确设置环境变量;5. 确保防火墙或防病毒软件未阻止连接;6. 检查服务器是否已关闭;7. 使用 RMAN 恢复损坏的文件;8. 检查 TNS 服务名称是否正确;9. 检查网络连接;10. 重新安装 Oracle 软件。

oracle游标关闭怎么解决 oracle游标关闭怎么解决 Apr 11, 2025 pm 10:18 PM

解决 Oracle 游标关闭问题的方法包括:使用 CLOSE 语句显式关闭游标。在 FOR UPDATE 子句中声明游标,使其在作用域结束后自动关闭。在 USING 子句中声明游标,使其在关联的 PL/SQL 变量关闭时自动关闭。使用异常处理确保在任何异常情况下关闭游标。使用连接池自动关闭游标。禁用自动提交,延迟游标关闭。

oracle怎么循环创建游标 oracle怎么循环创建游标 Apr 12, 2025 am 06:18 AM

Oracle 中,FOR LOOP 循环可动态创建游标, 步骤为:1. 定义游标类型;2. 创建循环;3. 动态创建游标;4. 执行游标;5. 关闭游标。示例:可循环创建游标,显示前 10 名员工姓名和工资。

oracle数据库如何分页 oracle数据库如何分页 Apr 11, 2025 pm 08:42 PM

Oracle 数据库分页利用 ROWNUM 伪列或 FETCH 语句实现:ROWNUM 伪列用于通过行号过滤结果,适用于复杂查询。FETCH 语句用于获取指定数量的第一行,适用于简单查询。

oracle数据库怎么停止 oracle数据库怎么停止 Apr 12, 2025 am 06:12 AM

要停止 Oracle 数据库,请执行以下步骤:1. 连接到数据库;2. 优雅关机数据库(shutdown immediate);3. 完全关机数据库(shutdown abort)。

HDFS配置CentOS需要哪些步骤 HDFS配置CentOS需要哪些步骤 Apr 14, 2025 pm 06:42 PM

在CentOS系统上搭建Hadoop分布式文件系统(HDFS)需要多个步骤,本文提供一个简要的配置指南。一、前期准备安装JDK:在所有节点上安装JavaDevelopmentKit(JDK),版本需与Hadoop兼容。可从Oracle官网下载安装包。环境变量配置:编辑/etc/profile文件,设置Java和Hadoop的环境变量,使系统能够找到JDK和Hadoop的安装路径。二、安全配置:SSH免密登录生成SSH密钥:在每个节点上使用ssh-keygen命令

oracle动态sql怎么创建 oracle动态sql怎么创建 Apr 12, 2025 am 06:06 AM

可以通过使用 Oracle 的动态 SQL 来根据运行时输入创建和执行 SQL 语句。步骤包括:准备一个空字符串变量来存储动态生成的 SQL 语句。使用 EXECUTE IMMEDIATE 或 PREPARE 语句编译和执行动态 SQL 语句。使用 bind 变量传递用户输入或其他动态值给动态 SQL。使用 EXECUTE IMMEDIATE 或 EXECUTE 执行动态 SQL 语句。

oracle中乱码怎么解决 oracle中乱码怎么解决 Apr 11, 2025 pm 10:09 PM

Oracle 乱码问题可以通过以下步骤解决:检查数据库字符集以确保与数据相匹配。设置客户端字符集以与数据库相匹配。转换数据或修改列字符集以匹配数据库字符集。使用 Unicode 字符集,并避免多字节字符集。检查数据库和客户端的语言设置是否正确。

See all articles