RHEL4As RAC手记
两台机器情况如下
主机1
Hostname:RHEL4-1
OS software RHEL4 As(2.6.9.0.78 ELSmp版本)
memory:1024MB
主机2
Hostname:RHEL4-2
OS software RHEL4 As(2.6.9.0.78 ELSmp版本)
memory:1024MB
没有拿到生产环境,所以自己先在VMWare做了,既然是VMware就取巧了一下,安装好一个虚拟机,然后把准备工作都做好在clone一个到另一个系统下了。
第一步
首先当然是安装RHEL了,手头上有RHEL4 32bit的,就用这个了。
第二步
设置网络配置了,需要两个网卡,配置public,private和virtual ip叻
这回就更仔细的研究了,没有按别人的步骤来,只添加了pri host和vip host。
real ip是192.168.2.206
hostname rhel4-1
192.168.3.206 rhel4-priv1
192.168.2.106 rhel4-vip1
vip必须和public在同一个Ip段上,vip是提供给oracle使用的,这里我们两个网卡分别对应着public和private
第三步
创建用户
#groupadd dba
#groupadd oinstall
#useradd -g oinstall -G dba oracle
#passwd oracle
#mkdir /u01/app/oracle/product/10.2.0.2/db_1 -p
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle
第四步
修改相关参数文件
环境变量参数/home/oracle/.bash_profile
export PATH
unset USERNAME
export LANG=zh_CN.EUC
ORACLE_BASE=/u01/app/oracle;
export ORACLE_BASE
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0.2/db_1
export ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0.2/crs_1
export ORACLE_SID=rac1
#export NLS_LANG=’SIMPLIFIED CHINESE_CHINA.ZHS16GBK’
PATH=$ORACLE_HOME/bin:/bin:/sbin:/usr/bin:/usr/ccs/bin:/usr/local/bin:/usr/ucb;
export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/network/lib:$ORACLE_HOME/oracm/lib:/usr/local/lib:/usr/lib;
export LD_LIBRARY_PATH
export ORACLE_TERM=xterm
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export THREADS_FLAG=native
export TEMP=/tmp
export TMPDIR=/tmp
配置内核参数/etc/sysctl.conf
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
#/sbin/sysctl -p 生效
Linux 帐户可以使用的进程数量和打开文件的数量设置限制 /etc/security/limits.conf和/etc/pam.d/login
/etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
/etc/pam.d/login
session required /lib/security/pam_limits.so
Disable SELinux /etc/grub.conf
在行kernel /vmlinuz-2.6.9-42.ELlargesmp ro root=LABEL=/ rhgb quiet后
加入
selinux=0
第五步
加载hangcheck-timer
在/etc/rc.d/rc.local加入
modprobe hangcheck-timer hangcheck_tick=30 hangcheck_margin=180
第六步
等效性配置,用oracle用户登录
#ssh-keygen -t rsa
一路回车
#ssh-keygen -t dsa
一路回车
在`/.ssh下将生成密匙和公匙
#cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
其他机器安装好以后运行
ssh oracle@rhel4-2 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
第七步安装ocfs2和asm
下载ocfs2和asm软件,我这里的RAC规划是ocfs2加上Asm,asm相对于row device来说便于管理,相对于ocfs2来说性能更好,至于使用ocfs2主要是做crs和voting disk部分的storage,数据文件以及其他数据库的文件都在asm上做storage。
ocfs2可以从oss下载 注意是ocfs第二版的哟http://oss.oracle.com/projects/ocfs2/files/RedHat/
asm可以从otn下载http://www.oracle.com/technology/software/tech/linux/asmlib/rhel4.html
现在前用uname -r查看自己的内核。找和自己内核一致的版本下载。
我这里下载的分别是
ocfs2
ocfs2-2.6.9-78.ELsmp-1.2.9-1.el4.i686.rpm
ocfs2console-1.2.7-1.el4.i386.rpm
ocfs2-tools-1.2.7-1.el4.i386.rpm
asm
oracleasm-2.6.9-78.ELsmp-2.0.5-1.el4.i686.rpm
oracleasmlib-2.0.4-1.el4.i386.rpm
oracleasm-support-2.1.3-1.el4.i386.rpm
安装
# rpm ‐ivh ocfs2-tools-1.2.7-1.el4.i386.rpm
# rpm ‐ivh ocfs2-2.6.9-78.ELsmp-1.2.9-1.el4.i686.rpm
# rpm ‐ivh ocfs2-tools-1.2.7-1.el4.i386.rpm
# rpm ‐ivh oracleasm-support-2.1.3-1.el4.i386.rpm
# rpm ‐ivh oracleasmlib-2.0.4-1.el4.i386.rpm
# rpm ‐ivh oracleasm-2.6.9-78.ELsmp-2.0.5-1.el4.i686.rpm
第八步
格式化硬盘
加一块硬盘10g上去,/dev/sdb
fdisk /dev/sdb
分两个区,一个作为ocfs管理的需要给600M就够了,crs和voting disk的,剩下的都个asm了
ocfs2的部署
#ocfs2console
<1>在OCFS2控制台中,点击“TASKS”下的“FORAMT”菜单对要格式化为OCFS2文件系统的分区进行格式化,在UI下,选择/dev/sdb1,
<2>在OCFS2控制台程序中选择“Cluster”菜单下的“Configure Nodes”菜单,配置使用OCFS2文件系统的集群节点,在“Node Configuration”对话框中,点击“Add”来连接集群节点
<3>Apply, 如果有错,删除/etc/ocfs2目录下的 cluster.conf文件,重新用UI创建。
最后的cluster.conf是
node:
ip_port = 7777
ip_address = 192.168.3.202
number = 0
name = rhel4-2
cluster = ocfs2
node:
ip_port = 7777
ip_address = 192.168.3.201
number = 1
name = rhel4-1
cluster = ocfs2
cluster:
node_count = 2
name = ocfs2
<4>在节点1 上利用界面上传配置文件到其它节点
# ocfs2console
然后选择 Cluster ‐> Propagate Configuration
所有都finished, 然后File‐>Quit
在节点2上可以看到一样的cluster.conf
<5>配置O2CB
[root@rhel4-2 crs]# /etc/init.d/o2cb enable
Writing O2CB configuration: OK
O2CB cluster ocfs2 already online
[root@rhel4-1 crs]# /etc/init.d/o2cb enable
Writing O2CB configuration: OK
Starting O2CB cluster ocfs2: OK
[root@rhel4-2 crs]# /etc/init.d/o2cb configure
Specify heartbeat dead threshold (>=7) [31]:61 根据自己的需要来设置
同样在节点2 上配置。
[root@rhel4-2 crs]# /etc/init.d/o2cb start
[root@rhel4-2 crs]# /etc/init.d/o2cb status
Module “configfs”: Loaded
Filesystem “configfs”: Mounted
Module “ocfs2_nodemanager”: Loaded
Module “ocfs2_dlm”: Loaded
Module “ocfs2_dlmfs”: Loaded
Filesystem “ocfs2_dlmfs”: Mounted
Checking O2CB cluster ocfs2: Online
Heartbeat dead threshold: 61
Network idle timeout: 30000
Network keepalive delay: 2000
Network reconnect delay: 2000
Checking O2CB heartbeat: Active
加载OCFS2 文件系统
mount -t ocfs2 -o _netdev,datavolume,nointr /dev/sdb1 /crsdata
如果有问题先执行一下
mkfs.ocfs2 -b 4k -C 32k -N 4 -L ora_home /dev/sdb1 –fs-feature-level=max-compat
asm的部署
查看volumn
#/etc/init.d/oracleasm listdisks
配置
#/etc/init.d/oracleasm configure
Default user to own the driver interface []: oracle
Default group to own the driver interface []: dba
其他默认值
据文件创建 ASM 磁盘
# /etc/init.d/oracleasm createdisk oradata /dev/sdb2 — oradata disk volumn
#/etc/init.d/oracleasm listdisks
ORADATA
#/etc/init.d/oracleasm status
Checking if ASM is loaded: yes
Checking if /dev/oracleasm is mounted: yes
#mount
oracleasmfs on /dev/oracleasm type oracleasmfs (rw)
接下来就可以安装clusterware了
常见故障排除
安装时到最后需要root执行CRS_HOME/root.sh,这时有错误
PROT-1: Failed to initialize ocrconfig
Failed to upgrade Oracle Cluster Registry configuration
原因是没有mount好,对于ocfs2来说,可以store,datafile,control file,redo file,archive file和crs和voting disk,但是必须在mount时加上datavolume
#mount -t ocfs2 -o datavolume /dev/sdb1 /crsdata
在执行root.sh时有时会挂在那里,是crs和voting disk没有format好,重新format好,然后装载
#ocfs2conosole
先umount,然后format,接着用上面的方式装载。
在root.sh install deamon是有时会告知如下信息
Running vipca(silent) for configuring nodeapps
The given interface(s), “eth2″ is not public. Public interfaces should be used to
configure virtual IPs.
重新用$CRS_HOME/bin/vipca执行,设置vip即可。
注意
有时RAC安装失败了,一定要把crs删除干净了才能安装,要不有些怪异的错误,ocr和votingdisk要格式化以后再重新mount才行。

本文转自 jxwpx 51CTO博客,原文链接:http://blog.51cto.com/jxwpx/208578,如需转载请自行联系原作者

RHEL4As RAC手记相关推荐

  1. oracle oem 监控,DBA手记:OEM罪几何?-空间监控的性能问题

    DBA手记:OEM罪几何?-空间监控的性能问题 在某金融行业用户的ERP数据库中,一个小时的采样报告,位于Elapsed Time消耗排行第二位的SQL消耗了19.41%的DB Time,该SQL同样 ...

  2. Oracle RAC万能集群测试大全 支持11g/12c/18c/19c版本

    为了方便阅读,请横屏观看代码部分 一.Oracle RAC集群测试背景 某中大型制造业公司,由于要新上项目,建设了一套业务系统-ERP系统,这套系统的数据库环境是Oracle RAC(RHEL Lin ...

  3. Oracle 19c: RAC 集群技术的坚持与放弃(含PPT下载)

    在 OOW 上发布出来关于 Oracle RAC 集群的几篇文章,可以让我们一睹 Oracle RAC集群技术的发展路线. (关注本公众号,回复 2018OOW 在 RAC 目录下是本文参考的3个PP ...

  4. 实战课堂:为什么更换存储之后一切正常但RAC集群启动不了?

    这是一次来自生产实践的真实案例,某客户核心生产库由于进行新老存储替换变更操作后,Oracle RAC 两个节点均无法打开,数据库遭遇严重故障. 先来看看告警日志中记录的错误信息,我们注意到数据库能够正 ...

  5. 你不可不看的 Oracle RAC 日常基本维护命令

    所有实例和服务的状态 $ srvctl status database -d orcl Instance orcl1 is running on node linux1 Instance orcl2 ...

  6. 基于权重的节点驱逐 - Oracle RAC 12.2 新特性

    在 Oracle RAC 中,多个节点之间需要能够正常通信来保持集群的一致性.当一个节点发生故障或者发生脑裂,节点因网络等原因不能与其他节点互通时,很可能会在集群重新配置的过程中被驱逐出去. RAC ...

  7. 【推荐】 RAC 性能优化全攻略与经典案例剖析

    ORACLE RAC凭借其卓越的容错能力和可扩展性以及对应用透明的切换能力引领了数据库高可用架构的潮流,但在实际的生产环境中,出现的性能问题非常多,对数据库的稳定性产生很大的影响,有一些甚至影响到了业 ...

  8. oracle 10.2.0.4 rac emca,ORACLE 10G RAC升级10.2.0.4报错

    升级ORACLE CLUSTERWARE执行root102.sh时报如下错误: /usr/lib/hpux64/dld.so: Unable to find library 'libclntsh.so ...

  9. oracle rac ora 12537,解决11gR2 Rac ORA-12537: TNS:connection closed 一例

    Solaris 10, oracle 11.2.0.3, RAC, 非ASM, 使用SCAN和DNS 状况: # tnsping ISUITE TNS Ping Utility for Solaris ...

最新文章

  1. 【OpenCV】图像代数运算:平均值去噪,减去背景
  2. Semtech与Lacuna从太空接收信息
  3. Qt WebSocket服务端的简单Demo
  4. 原来自己一直平凡着 2015-10-20
  5. Centos7 安装OpenTSDB
  6. [Kaggle] Heart Disease Prediction
  7. 6.dubbo常用的xml配置有哪些_【面试篇】必须掌握的Spring 常用注解
  8. Android 手游闪屏极简方案
  9. windows 覆盖linux,您是否曾考虑过用Linux替换Windows?
  10. plsql表锁被占用_处理Oracle被锁住的进程
  11. 三个团队的站立会议旁观笔记
  12. 【08期】说说Object类下面有几种方法呢?
  13. [GWCTF 2019]枯燥的抽奖 1
  14. 衡量数据集中趋势的方法
  15. 汽车维修管理系统汽车维修管理系统采用B / S架构,主要使用Java技术进行开发,结合最新流行的java和mysql的SSM框架技术。
  16. sql distinct多个字段
  17. SpaceX在法兰克福成立Starlink有限公司​
  18. LightGBM学习分享
  19. 计算机考试网页模板,计算机基础期末考试模板A卷(2页)-原创力文档
  20. 在eclipse中设置Tomcat启动和关闭时间

热门文章

  1. ELK下filebeat性能调优
  2. 【PostgreSQL-9.6.3】事件触发器
  3. socket 网络通信(基于tcp协议)以及粘包解决方案
  4. 使用ByteArrayOutputStream解决IO乱码问题的踩坑记录
  5. Linux下安装Nginx完整教程及常见错误解决方案
  6. [转发]黑苹果修改DSDT彻底解决关机不断电和睡眠问题
  7. 浏览器报错:unexpected end of input 解决方法
  8. Favicon尺寸?
  9. OpenCV-Python中的简单数字识别OCR
  10. iloc,ix和loc有何不同?