ESX上ORACLE 10.2RAC(4.在REHAT4.7中安装ORACLE RAC)
四、 安装CRS软件
上传cluster软件到rac1,rac2的/home/oracle目录下
[root@rac1 ~]# cd /home/oracle
[root@rac1 oracle]# ls
10201_clusterware_linux32.zip Desktop ocfs2 oracleasm
[root@rac1 oracle]# unzip 10201_clusterware_linux32.zip
[root@rac2 oracle]# unzip 10201_clusterware_linux32.zip
[root@rac1 clusterware]# su – oracle
[oracle@rac1 ~]$ clusterware/cluvfy/runcluvfy.sh stage -pre crsinst -n rac1,rac2 -verbose
Performing pre-checks for cluster services setup
Checking node reachability...
Check: Node reachability from node "rac1"
Destination Node Reachable?
------------------------------------ ------------------------
rac2 yes
rac1 yes
Result: Node reachability check passed from node "rac1".
Checking user equivalence...
Check: User equivalence for user "oracle"
Node Name Comment
------------------------------------ ------------------------
rac2 passed
rac1 passed
Result: User equivalence check passed for user "oracle".
Checking administrative privileges...
Check: Existence of user "oracle"
Node Name User Exists Comment
------------ ------------------------ ------------------------
rac2 yes passed
rac1 yes passed
Result: User existence check passed for "oracle".
Check: Existence of group "oinstall"
Node Name Status Group ID
------------ ------------------------ ------------------------
rac2 exists 1000
rac1 exists 1000
Result: Group existence check passed for "oinstall".
Check: Membership of user "oracle" in group "oinstall" [as Primary]
Node Name User Exists Group Exists User in Group Primary Comment
---------------- ------------ ------------ ------------ ------------ ------------
rac2 yes yes yes yes passed
rac1 yes yes yes yes passed
Result: Membership check for user "oracle" in group "oinstall" [as Primary] passed.
Administrative privileges check passed.
Checking node connectivity...
Interface information for node "rac2"
Interface Name IP Address Subnet
------------------------------ ------------------------------ ----------------
eth0 192.168.0.191 192.168.0.0
eth1 10.10.0.191 10.10.0.0
Interface information for node "rac1"
Interface Name IP Address Subnet
------------------------------ ------------------------------ ----------------
eth0 192.168.0.190 192.168.0.0
eth1 10.10.0.190 10.10.0.0
Check: Node connectivity of subnet "192.168.0.0"
Source Destination Connected?
------------------------------ ------------------------------ ----------------
rac2:eth0 rac1:eth0 yes
Result: Node connectivity check passed for subnet "192.168.0.0" with node(s) rac2,rac1.
Check: Node connectivity of subnet "10.10.0.0"
Source Destination Connected?
------------------------------ ------------------------------ ----------------
rac2:eth1 rac1:eth1 yes
Result: Node connectivity check passed for subnet "10.10.0.0" with node(s) rac2,rac1.
Suitable interfaces for the private interconnect on subnet "192.168.0.0":
rac2 eth0:192.168.0.191
rac1 eth0:192.168.0.190
Suitable interfaces for the private interconnect on subnet "10.10.0.0":
rac2 eth1:10.10.0.191
rac1 eth1:10.10.0.190
ERROR:
Could not find a suitable set of interfaces for VIPs.
Result: Node connectivity check failed.
Checking system requirements for 'crs'...
Check: Total memory
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 1010.25MB (1034496KB) 512MB (524288KB) passed
rac1 1010.25MB (1034496KB) 512MB (524288KB) passed
Result: Total memory check passed.
Check: Free disk space in "/tmp" dir
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 4.27GB (4481496KB) 400MB (409600KB) passed
rac1 4.2GB (4400352KB) 400MB (409600KB) passed
Result: Free disk space check passed.
Check: Swap space
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 2GB (2096472KB) 1GB (1048576KB) passed
rac1 2GB (2096472KB) 1GB (1048576KB) passed
Result: Swap space check passed.
Check: System architecture
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 i686 i686 passed
rac1 i686 i686 passed
Result: System architecture check passed.
Check: Kernel version
Node Name Available Required Comment
------------ ------------------------ ------------------------ ----------
rac2 2.6.9-78.ELsmp 2.4.21-15EL passed
rac1 2.6.9-78.ELsmp 2.4.21-15EL passed
Result: Kernel version check passed.
Check: Package existence for "make-3.79"
Node Name Status Comment
------------------------------ ------------------------------ ----------------
rac2 make-3.80-7.EL4 passed
rac1 make-3.80-7.EL4 passed
Result: Package existence check passed for "make-3.79".
Check: Package existence for "binutils-2.14"
Node Name Status Comment
------------------------------ ------------------------------ ----------------
rac2 binutils-2.15.92.0.2-25 passed
rac1 binutils-2.15.92.0.2-25 passed
Result: Package existence check passed for "binutils-2.14".
Check: Package existence for "gcc-3.2"
Node Name Status Comment
------------------------------ ------------------------------ ----------------
rac2 gcc-3.4.6-10 passed
rac1 gcc-3.4.6-10 passed
Result: Package existence check passed for "gcc-3.2".
Check: Package existence for "glibc-2.3.2-95.27"
Node Name Status Comment
------------------------------ ------------------------------ ----------------
rac2 glibc-2.3.4-2.41 passed
rac1 glibc-2.3.4-2.41 passed
Result: Package existence check passed for "glibc-2.3.2-95.27".
Check: Package existence for "compat-db-4.0.14-5"
Node Name Status Comment
------------------------------ ------------------------------ ----------------
rac2 compat-db-4.1.25-9 passed
rac1 compat-db-4.1.25-9 passed
Result: Package existence check passed for "compat-db-4.0.14-5".
Check: Package existence for "compat-gcc-7.3-2.96.128"
Node Name Status Comment
------------------------------ ------------------------------ ----------------
rac2 missing failed
rac1 missing failed
Result: Package existence check failed for "compat-gcc-7.3-2.96.128".
Check: Package existence for "compat-gcc-c++-7.3-2.96.128"
Node Name Status Comment
------------------------------ ------------------------------ ----------------
rac2 missing failed
rac1 missing failed
Result: Package existence check failed for "compat-gcc-c++-7.3-2.96.128".
Check: Package existence for "compat-libstdc++-7.3-2.96.128"
Node Name Status Comment
------------------------------ ------------------------------ ----------------
rac2 missing failed
rac1 missing failed
Result: Package existence check failed for "compat-libstdc++-7.3-2.96.128".
Check: Package existence for "compat-libstdc++-devel-7.3-2.96.128"
Node Name Status Comment
------------------------------ ------------------------------ ----------------
rac2 missing failed
rac1 missing failed
Result: Package existence check failed for "compat-libstdc++-devel-7.3-2.96.128".
Check: Package existence for "openmotif-2.2.3"
Node Name Status Comment
------------------------------ ------------------------------ ----------------
rac2 openmotif-2.2.3-10.2.el4 passed
rac1 openmotif-2.2.3-10.2.el4 passed
Result: Package existence check passed for "openmotif-2.2.3".
Check: Package existence for "setarch-1.3-1"
Node Name Status Comment
------------------------------ ------------------------------ ----------------
rac2 setarch-1.6-1 passed
rac1 setarch-1.6-1 passed
Result: Package existence check passed for "setarch-1.3-1".
Check: Group existence for "dba"
Node Name Status Comment
------------ ------------------------ ------------------------
rac2 exists passed
rac1 exists passed
Result: Group existence check passed for "dba".
Check: Group existence for "oinstall"
Node Name Status Comment
------------ ------------------------ ------------------------
rac2 exists passed
rac1 exists passed
Result: Group existence check passed for "oinstall".
Check: User existence for "nobody"
Node Name Status Comment
------------ ------------------------ ------------------------
rac2 exists passed
rac1 exists passed
Result: User existence check passed for "nobody".
System requirement failed for 'crs'
Pre-check for cluster services setup was unsuccessful on all the nodes.
在上面预安装的结果中可以看到有两个错误:
1. VIP 因为实验环境中用的私网IP,而需要用的是公网IP,在后面的步骤中手动执行vipca即可,可忽略
2. Rpm软件包,可忽略
重启rac1,以oracle用户登录
[oracle@rac1 ~]$ cd clusterware/
[oracle@rac1 clusterware]$ ls
cluvfy doc install response rpm runInstaller stage upgrade welcome.html
[oracle@rac1 clusterware]$ ./runInstaller
点击next
next
将路径修改为/db/oracle/product/10.2.0/crs
next
点击Add,添加节点rac2
选择etho,Edit,将etho作为公网
填写ocr位置
填写表决盘位置
点击Install进行安装
分别在两个节点rac1和rac2上以ROOT用户,运行下图中显示的两个脚本
[oracle@rac1 ~]$ su -
Password:
[root@rac1 ~]# /db/oracle/oraInventory/orainstRoot.sh
Changing permissions of /db/oracle/oraInventory to 770.
Changing groupname of /db/oracle/oraInventory to oinstall.
The execution of the script is complete
[root@rac1 ~]# /db/oracle/product/10.2.0/crs/root.sh
WARNING: directory '/db/oracle/product/10.2.0' is not owned by root
WARNING: directory '/db/oracle/product' is not owned by root
WARNING: directory '/db/oracle' is not owned by root
WARNING: directory '/db' is not owned by root
Checking to see if Oracle CRS stack is already configured
/etc/oracle does not exist. Creating it now.
Setting the permissions on OCR backup directory
Setting up NS directories
Oracle Cluster Registry configuration upgraded successfully
WARNING: directory '/db/oracle/product/10.2.0' is not owned by root
WARNING: directory '/db/oracle/product' is not owned by root
WARNING: directory '/db/oracle' is not owned by root
WARNING: directory '/db' is not owned by root
assigning default hostname rac1 for node 1.
assigning default hostname rac2 for node 2.
Successfully accumulated necessary OCR keys.
Using ports: CSS=49895 CRS=49896 EVMC=49898 and EVMR=49897.
node <nodenumber>: <nodename> <private interconnect name> <hostname>
node 1: rac1 rac1-priv rac1
node 2: rac2 rac2-priv rac2
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
Now formatting voting device: /crs/vd1
Now formatting voting device: /crs/vd2
Now formatting voting device: /crs/vd3
Format of 3 voting devices complete.
Startup will be queued to init within 90 seconds.
Adding daemons to inittab
Expecting the CRS daemons to be up within 600 seconds.
CSS is active on these nodes.
Rac1
CSS is inactive on these nodes.
Rac2
Local node checking complete.
Run root.sh on remaining nodes to start CRS daemons.
[oracle@rac2 clusterware]$ su -
Password:
[root@rac2 ~]# /db/oracle/oraInventory/orainstRoot.sh
Changing permissions of /db/oracle/oraInventory to 770.
Changing groupname of /db/oracle/oraInventory to oinstall.
The execution of the script is complete
[root@rac2 ~]# /db/oracle/product/10.2.0/crs/root.sh
WARNING: directory '/db/oracle/product/10.2.0' is not owned by root
WARNING: directory '/db/oracle/product' is not owned by root
WARNING: directory '/db/oracle' is not owned by root
WARNING: directory '/db' is not owned by root
Checking to see if Oracle CRS stack is already configured
/etc/oracle does not exist. Creating it now.
Setting the permissions on OCR backup directory
Setting up NS directories
Oracle Cluster Registry configuration upgraded successfully
WARNING: directory '/db/oracle/product/10.2.0' is not owned by root
WARNING: directory '/db/oracle/product' is not owned by root
WARNING: directory '/db/oracle' is not owned by root
WARNING: directory '/db' is not owned by root
clscfg: EXISTING configuration version 3 detected.
clscfg: version 3 is 10G Release 2.
assigning default hostname rac1 for node 1.
assigning default hostname rac2 for node 2.
Successfully accumulated necessary OCR keys.
Using ports: CSS=49895 CRS=49896 EVMC=49898 and EVMR=49897.
node <nodenumber>: <nodename> <private interconnect name> <hostname>
node 1: rac1 rac1-priv rac1
node 2: rac2 rac2-priv rac2
clscfg: Arguments check out successfully.
NO KEYS WERE WRITTEN. Supply -force parameter to override.
-force is destructive and will destroy any previous cluster
configuration.
Oracle Cluster Registry for cluster has already been initialized
Startup will be queued to init within 90 seconds.
Adding daemons to inittab
Expecting the CRS daemons to be up within 600 seconds.
CSS is active on these nodes.
Rac1
Rac2
CSS is active on all nodes.
Waiting for the Oracle CRSD and EVMD to start
Oracle CRS stack installed and running under init(1M)
Running vipca(silent) for configuring nodeapps
The given interface(s), "eth0" is not public. Public interfaces should be used to configure virtual IPs.
[root@rac2 bin]# pwd
/db/oracle/product/10.2.0/crs/bin
[root@rac2 bin]# ./vipca
点击next
选择将eth0作为公网,点击next
填写rac1的虚拟IP名称为rac1-vip,IP地址为192.168.0.100
填写rac2的虚拟IP名称为rac2-vip,IP地址为192.168.0.101
finish
点击OK,Exit
返回rac1,点击OK
Exit
Yes
转载于:https://blog.51cto.com/xiangxue158/567880
相关文章:

【Qt中文手册】QObject
Qt几乎所有的类都是从QObject直接或间接继承的,但是你真的了解QObject吗?下面先看看QObject在官方手册中的介绍。 一、QObject简介 1、信号和槽 QObject是所有Qt类的基类,是Qt对象模型的核心。该模型的核心功能是信号和槽的通信机制(有吐槽Qt信号和槽的,个人建议不要用…

整理下.net分布式系统架构的思路
最近看到有部分招聘信息,要求应聘者说一下分布式系统架构的思路。今天早晨正好有些时间,我也把我们实际在.net方面网站架构的演化路线整理一下,只是我自己的一些想法,欢迎大家批评指正。 首先说明的是.net下开源内容较少ÿ…

柔性生态布局未来,小鱼易连 2019“深耕视界逐梦小鱼”北京火爆招募
3 月 21 日,小鱼易连 “深耕视界逐梦小鱼”——2019 春季伙伴招募大会北京站在北京东方美爵酒店成功召开。 小鱼易连联合创始人兼 CEO 袁文辉以“深耕视界逐梦小鱼” 为主题,为到场的四百家合作伙伴和媒体完整展示了小鱼易连全面布局产业互联网…

perl XML创建XML文件
首先安装XML::Writer,XML::Parser等模块 1.执行/usr/bin/perl -MCPAN -e install "YAML" 安装YAML模块 2.进入CPAN模式,进行下载模块操作 $ sudo perl -MCPAN -e shell 3.在CPAN模式下进行安装,nolock_cpan> install XML::Writer XML::Pars…

开发自己的山寨Android注解框架
目录 开发自己的山寨Android注解框架开发自己的山寨Android注解框架 参考 Github黄油刀 Overview 在上一章我们学习了Java的注解(Annotation),但是我想大家可能感觉,虽然理解了也会学会,但是不知道干什么用,那么请继续忍受我这枯燥…

特斯拉起诉小鹏汽车员工窃取商业机密,何小鹏回应
参加 2019 Python开发者日,请扫码咨询 ↑↑↑整理 | 琥珀出品 | AI科技大本营(ID:rgznai100)3 月 21 日,外媒 TheVerge 报道称,特斯拉正针对多名前雇员和自动驾驶汽车公司 Zoox 提起诉讼,涉嫌盗用公司商业机…

【Qt】一个使用QEventLoop时,遇到的教训
1、问题描述 伪代码如下: QEventLoop eventLoop; QObject::connect(this, &Class::signal, [](){doSomething();eventLoop.exit(0); }); emit signal(); eventLoop.exec();在执行eventLoop.exec()时,造成永不退出。 2、原因分析 本打算在&#x…

基于kryo序列化方案的memcached-session-manager多memcached...
为什么80%的码农都做不了架构师?>>> 上次基于Java IO的序列化方案配置了memcached-session-manager,但是性能不好,现在先简单配置成基于kryo的 Xml代码 <Context path"/mobilemail" docBase"D:\webapp\WebR…

Python持续点火,跟进还是观望?
参加 2019 Python开发者日,请扫码咨询 ↑↑↑Python 这把火,到底烧了多久了?近日,李笑来带着他的 Python 编程书,一路狂收 Star、Fork,火速登顶 GitHub Trending 榜,直接 C 位出道。币圈大佬也玩…

win2d 图片水印
win2d 图片水印 本文告诉大家如何使用 win2d 给图片加上水印。 安装 首先需要使用 Nuget 安装 win2d ,安装参见win10 uwp win2d 如果没有更新 dot net core 那么在运行可能会出现下面异常System.TypeLoadException: Requested Windows Runtime type Microsoft.Graph…

【Qt】QtCreator中的单例编程(以ActionManager为例)
1、ActionManager简介 ActionManager类负责注册菜单和菜单项以及键盘快捷键。 ActionManager的公共函数都是静态的,只有使用信号时,才用到单例。 2、ActionManager单例伪代码 头文件中将构造函数和析构函数设置成私有(private),使用instance()函数获取单例 class Acti…

37、C++ Primer 4th笔记,特殊工具与技术,类成员指针
1、成员指针(pointer to member)包含类的类型以及成员的类型。成员指针只应用于类的非static成员。static类成员不是任何对象的组成部分,所以不需要特殊语法来指向static成员,static成员指针是普通指针。通过指定函数的返回类型&a…

聊一聊javascript执行上下文
跟大家聊聊js的执行上下文 一,相关概念 EC : 执行上下文 ECS : 执行环境栈 VO : 变量对象 AO : 活动对象 scope chain :作用域链 二,执行上下文 javascript运行的代码环境有三种: 全局代码:代码…

【Qt】QtCreator中使用ActionManager类管理标题栏(MunuBar)、菜单(Menu)和菜单中的项目(Action)
1、简介 QtCreator中使用ActionManager类管理标题栏(MunuBar)、菜单(Menu)和菜单中的项目(Action),下面以创建“New”动作为例,介绍ActionManager的使用方法,后续会详细分析ActionManager。 2、创建标题栏(MunuBar) const char MENU_BAR[] = "QtCreator.MenuBar&quo…

和达摩院深度绑定,阿里云下一个十年,成为“云上的阿里巴巴”
参加 2019 Python开发者日,请扫码咨询 ↑↑↑整理 | 非主流出品 | AI科技大本营(ID:rgznai100)2009 ~ 2019,阿里云已经走过了 10 年时光。在此次的阿里云峰会北京站上,为阿里云的站台的是张建锋。去年 11 月…

如何用TF Object Detection API训练交通信号灯检测神经网络?
参加 2019 Python开发者日,请扫码咨询 ↑↑↑作者简介:申泽邦(Adam Shan),谷歌认证机器学习专家(Google Developer Expert),兰州大学智能驾驶团队技术负责人,硕士在读。文…

iOS progressive Web App (PWA) 技术
随着 iOS 11.3 的发布,iOS PWA 的时代终于来了!本文对 iOS 中 PWA 的能力进行了分析,并将其与 iOS 上的 Native App、Android 上的 PWA 进行了深度对比,是值得收藏的一篇好文。 随着 iOS 11.3 的发布,苹果悄悄的支持了…

VS新建类自动添加版本注释
我们开发的时候习惯在代码顶部加上自己的版权说明。 每次拷贝挺麻烦的,上网查了一下,2003的介绍但不少。但08的模板生成方式好像改变了 后来2005的一篇介绍给了我一点提示。原来模板文件放在common7目录下。 主要分为ProjectTemplates和ItemTemplates&am…

【linux】shell中整数运算的加、减、乘、除
1、使用双括号“(( ))” shell中变量实现加法的方法 d $(($d 2)) 例子如下 #!/bin/bash d0 echo "d$d"for((i1;i<10;i)); do d$(($d 2)) echo "d$d" done unset d((i$j$k)) 等价于 iexpr $j $k ((i$j-$k)) 等价于 iexpr $j -$k ((i$…

简单使用PDO
2019独角兽企业重金招聘Python工程师标准>>> 首先基本配置: 连接MYSQL <?php $dsn mysql:hostlocalhost;dbnameworld;; $user user; $password secret; try { $dbh new PDO($dsn, $user, $password); } catch (PDOException $e) { echo Connecti…

一文看懂模糊搜索1.0到3.0的算法迭代历程
参加 2019 Python开发者日,请扫码咨询 ↑↑↑作者 | 宋广泽责编 | 郭芮来源 | CSDN(ID:CSDNnews)前一段时间在Linux上用C语言做了一个信息管理系统,初始版本的搜索就是直接使用了C语言库文件<string.h>里的库函数…

【linux】shell中浮点数运算的加、减、乘、除
bash 不支持浮点运算,如果需要进行浮点运算,需要借助bc,awk 处理。 1、bc #!/bin/bash#加 f$(echo "4.32.5"|bc) echo "4.32.5$f"#减 f$(echo "4.3-2.5"|bc) echo "4.3-2.5$f"#乘 f$(echo "4.30*2.50&qu…

页面加载和解析流程
输入url,浏览器向服务器发出请求,服务器返回html文件,浏览器开始载入html代码,发现head标签有link标签引入外部的css文件,浏览器发出css文件的请求,服务器返回这个css文件,浏览器继续载入body中的代码&…

作为程序员应有10项权利
Scott认为,作为开发人员,应该有权享有以下列表所示的待遇;不过在国内,这个却有点异想天开,能有几个老板愿意给员工如此舒适的环境呢? 1.每位程序员应该拥有一个安静的工作环境 2.每位程序员应该拥有听音乐…

【Qt】QtCreator中自动补全注释
1、简述 在QtCreator中编辑代码,可以自动补全函数注释,供doxygen使用并生成文档。doxygen的使用方法,后续会写一个详细的博文。 2、使用方法 在函数前分别输入“/**”、“/*!”、“//!”、“///”,然后敲击回车键,会自动补全下方函数的注释。 注意:输入的注释一定要紧…

Java内存模型与线程
一、一致性高速缓存的存储交互很好的解决了处理器与内存的速度矛盾,但也存在缓存一致性(cache coherence)问题二、java内存模型内存模型:对特定的内存或高速缓存进行读写访问的过程抽象。 java内存模型(java memory mo…

Google用更少标签生成图像,还提出一个用于训练评估GAN的库
参加 2019 Python开发者日,请扫码咨询 ↑↑↑译者 | 刘畅责编 | 琥珀出品 | AI科技大本营(ID:rgznai100)生成对抗网络(GAN)是属于一种强有力的深度生成模型。GAN 的主要思想是训练两个神经网络:一个是学习如…

视频用户行为及推荐系统评价KPI-部分
问题 KPI 使用推荐区的用户数量和比率是否显著提升 使用推荐区用户量及其占比与之前进行对比 新老用户使用推荐差异是否明显 新老用户推荐区使用比率占各自类别比,新老用户推荐区产生的VV占各自类别比 推荐区产生的VV占总VV是否显著提升 推荐区VV占总VV占比与…

【linux】用户和组的管理:添加、修改、删除(useradd usermod userdel groupadd groupdel)
一、用户 1、添加 $ useradd -h Usage: useradd [options] LOGINuseradd -Duseradd -D [options]Options:-b, --base-dir BASE_DIR base directory for the home directory of the new account-c, --comment COMMENT 加上备注文字,备注文字保存在pa…

ping命令工具:同时ping多个IP
检测多个ip在同一时间点的响应状态,通过对比来判断哪个ip异常。 下载地址:https://share.weiyun.com/5XCkypG 转载于:https://www.cnblogs.com/leavind/p/8743149.html