设为首页 收藏本站
查看: 553|回复: 0

[经验分享] 10G ORACLE RAC 搭建实战之环境配置

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-11-27 09:01:15 | 显示全部楼层 |阅读模式
一.  用户创建
各个节点用户名和用户组必须一样,并创建oracle安装目录以及clustercrs目录
[iyunv@rac1]#groupadd -g 500 dba  
[iyunv@rac1]#groupadd -g 501 oinstall  
[iyunv@rac1]#useradd -u 500 -g oinstall -G dba oracle
[iyunv@rac1]#passwd oracle
Changing passwordfor user oracle.  
New UNIX password:
BAD PASSWORD: itis based on a dictionary word  
Retype new UNIXpassword:
passwd: allauthentication tokens updated successfully.
[iyunv@rac1]# chmod-R 755 /home/oracle     
(注意:该步骤涉及ssh等价性配置)

[iyunv@rac1]# mkdir-p /oraapp/oracle/10g/db_1
[iyunv@rac1]# mkdir-p /oraapp/oracle/10g/db_1
[iyunv@rac1]# mkdir-p /oraapp/oracle/10g/crs
[iyunv@rac1]# chown-R oracle:oinstall /oraapp
[iyunv@rac1]# chmod-R 755 /oraapp

二.  IP分配及hosts文件配置
hostname
saprac1
saprac2
公共ip(eth2)
133.160.130.18
133.160.130.19
虚拟ip(eth0)
192.168.1.18
192.168.1.19
私有ip(eth4)
10.10.10.18
10.10.10.19
ORACLE_SID
xgxrac1
xgxrac2

Hosts文件配置(两个节点一样)
[oracle@rac1 ~]$cat /etc/hosts
# Do not removethe following line, or various programs
# that requirenetwork functionality will fail.
127.0.0.1       localhost.localdomain localhost
::1             localhost6.localdomain6 localhost6

133.160.130.18   rac1
133.160.130.19   rac2
192.168.1.18     rac1_vip
192.168.1.19     rac2_vip
10.10.10.18      rac1_priv
10.10.10.19      rac2_priv

三、系统参数调整
修改下列文件:
1.添加以下内容到/etc/security/limits.conf
# vi/etc/security/limits.conf
#oracle limits
oracle softnproc 2047
oracle hardnproc 16384
oracle softnofile 1024
oracle hardnofile 65536

2.添加以下内容到/etc/pam.d/login
# vi /etc/pam.d/login
session  required pam_limits.so

3.添加以下内容到/etc/profile
# vi /etc/profile
if [ $USER = "oracle" ]; then
    if [ $SHELL = "/bin/ksh" ]; then
        ulimit -p 16384
        ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
fi

4.修改系统内核参数
# vi  /etc/sysctl.conf
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax =53687091200   (内存分配为>PGA+SGA)
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max= 1048576
修改好内核参数后,执行如下命令使新的设置生效
# /sbin/sysctl -p

系统版本信息修改(安装完后改回)
编辑/etc/redhat-release文件替换现在的版本信息(Red Hat Enterprise Linux Server release 3(Tikanga))

四.  修改环境变量
在各个节点上依次修改,注意SID, ORACLE_BASE,ORACLE_HOME
[oracle@rac1 ~]$vi ~/.bash_profile
export PATH
unset USERNAME
alias ll="ls-la"
exportORACLE_BASE=/oraapp/oracle/10g
export ORACLE_HOME=$ORACLE_BASE/db_1
exportORA_CRS_HOME=$ORACLE_BASE/crs
exportORACLE_SID=sapora1
exportPATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin
exportPATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
exportSPFILE_PATH=$ORACLE_HOME/dbs
exportTNS_ADMIN=$ORACLE_HOME/network/admin
exportORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
exportLD_LIBRARY_PATH=$ORACLE_HOME/lib
exportLD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
exportLD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
exportCLASSPATH=$ORACLE_HOME/JRE
exportCLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE/lib
exportCLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
exportCLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
exportCLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
exportTHREADS_FLAG=native
export TEMP=/tmp
export TMPDIR=/tmp
exportLIBPATH=$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib
exportORACLE_TERM=xterm
exportLC_CTYPE=en_US.AL16UTF16
exportNLS_LANG=AMERICAN_AMERICA.US7ASCII
~                                                                              
~                                                                             
~                                                                             
~                                                                             
".bash_profile"39L, 1244C written      

使更改立即生效                  
[oracle@rac1 ~]$source ~/.bash_profile

五.  开发包检查
yum -y install compat-libstdc++ libaio libXp compat-dbopenmotif22 binutils control-center gcc gcc-c++ glibc glibc-common gnome-libslibstdc++ libstdc++-devel make pdksh sysstat xscreensaver setarch glibc-develsetarch-2* make-3* glibc-2* libaio-0* compat-libstdc++-33-3* compat-gcc-34-3*compat-gcc-34-c++-3* gcc-4* libXp-1* openmotif-2* compat-db-4* openmotif-2*

六. RAW绑定

所谓裸设备(裸分区、原始分区),就是没有被格式化、不被操作系统通过文件系统来读取的字符设备。裸设备避免了再经过Unix操作系统这一层,数据直接从Disk到Oracle进行传输,所以使用裸设备对于读写频繁的数据库应用来说,可以极大地提高数据库系统的性能。裸设备应该由root来创建裸设备,然后再分配给Oracle用户以供使用。同时还要把它归入Oracle用户所在的那个组里边(通常都是DBA)。

裸设备和非裸设备的表面差异是一个就是新出厂的磁盘,没有任何操作;一个就是fdisk格式化了的新磁盘

在aix上LV就是裸设备,但是在linux上需要单独创建;为防止重启后配置丢失,将绑定设置写到 /etc/sysconfig/rawdevices文件中

(1).编辑/etc/sysconfig/rawdevices 添加裸设备对应lv

[iyunv@rac1 ~]# vi/etc/sysconfig/rawdevices  
# raw devicebindings
# format:  <rawdev> <major> <minor>
#          <rawdev> <blockdev>
# example:/dev/raw/raw1 /dev/sda1
#          /dev/raw/raw2 8 5

/dev/raw/raw1   /dev/mapper/oravg01-lvol0
/dev/raw/raw2   /dev/mapper/oravg01-lvol1
/dev/raw/raw3   /dev/mapper/oravg01-lvol2
/dev/raw/raw4   /dev/mapper/oravg01-lvol3
/dev/raw/raw5   /dev/mapper/oravg01-lvol4
/dev/raw/raw6   /dev/mapper/oravg01-lvol5
/dev/raw/raw7   /dev/mapper/oravg01-lvol6
/dev/raw/raw8   /dev/mapper/oravg01-lvol7
/dev/raw/raw9   /dev/mapper/oravg01-lvol8
/dev/raw/raw10  /dev/mapper/oravg01-lvol9
/dev/raw/raw11  /dev/mapper/oravg01-lvol10
/dev/raw/raw12  /dev/mapper/oravg01-lvol11
/dev/raw/raw13  /dev/mapper/oravg01-lvol12
/dev/raw/raw14  /dev/mapper/oravg01-lvol13
/dev/raw/raw15  /dev/mapper/oravg01-lvol14
/dev/raw/raw16  /dev/mapper/oravg01-lvol15
/dev/raw/raw17  /dev/mapper/oravg01-lvol16
/dev/raw/raw18  /dev/mapper/oravg01-lvol17
/dev/raw/raw19  /dev/mapper/oravg01-lvol18
/dev/raw/raw20  /dev/mapper/oravg01-lvol19
/dev/raw/raw21  /dev/mapper/oravg01-lvol20
/dev/raw/raw22  /dev/mapper/oravg01-lvol21
/dev/raw/raw23  /dev/mapper/oravg01-lvol22
/dev/raw/raw24  /dev/mapper/oravg01-lvol23
/dev/raw/raw25  /dev/mapper/oravg01-lvol24
/dev/raw/raw26  /dev/mapper/oravg01-lvol25
/dev/raw/raw27  /dev/mapper/oravg01-lvol26
/dev/raw/raw28  /dev/mapper/oravg01-lvol27
/dev/raw/raw29  /dev/mapper/oravg01-lvol28
/dev/raw/raw30  /dev/mapper/oravg01-lvol29
/dev/raw/raw31  /dev/mapper/oravg01-lvol30
/dev/raw/raw32  /dev/mapper/oravg01-lvol31
/dev/raw/raw33  /dev/mapper/oravg01-lvol32
/dev/raw/raw34  /dev/mapper/oravg01-lvol33
/dev/raw/raw35  /dev/mapper/oravg01-lvol34
/dev/raw/raw36  /dev/mapper/oravg01-lvol35

(2).执行 /etc/init.d/rawdevices restart 使配置文件中的裸设备生效.

(3)执行 /sbin/chkconfig rawdevices on 保证机器启动的时候裸设备能够加载。(查看是否启动 chkconfig –-list|grep raw)

(4)将裸设备授权给oracle 用户,更改裸设备的属主

第一种方法:修改/etc/udev/permissions.d/50-udev.permissions文件
将/etc/udev/permissions.d/50-udev.permissions的113行
从raw/*:root:disk:0660
修改为raw/*:oracle:oinstall:0660

这个的意思是修改裸设备的默认属主为oracle:oinstall,默认的mode是0660
这样在每次重启创建裸设备的时候,默认的属主就为oracle:oinstall。

#刷新裸设备(这样系统在下次启动时,会重新建立需要的raw设备名)

[iyunv@myhost raw]# start_udev启动 udev: [ 确定][iyunv@myhost raw]#init 6

第二种方法:先执行  chown oracle:oinstall/dev/raw/raw*

编辑启动配置文件 /etc/rc.local 添加 chown oracle:oinstall/dev/raw/raw*

[iyunv@rac2 etc]# vi /etc/rc.local

#!/bin/sh

#

# This script will be executed *after* all the other init scripts.

# You can put your own initialization stuff in here if you don't

# want to do the full Sys V style init stuff.


touch /var/lock/subsys/local

#change raw owner

chown oracle:oinstall /dev/raw/raw*

重启系统,查看裸设备是否存在。

(5)切换到另外一个节点上,由于所有卷组都处于未激活状态,激活卷组: vgchange –ay oravgX,之后重复上述操作。


七.  NTP服务配置
  • 1.       服务端(133.160.130.18)

由于不能联网,不对上层时间服务进行修改,只修改连接限制;编辑/etc/ntp.conf
修改 restrict default kod nomodify notrap nopeernoquery
为   restrictdefault  nomodify  
     重启ntp服务:service ntpd restart
设置开机启动:chkconfig ntpd on
  • 2.    客户端(133.160.130.19)

添加任务,每5分钟执行一次
echo '*/5 * * * * root  ntpdate133.160.130.18'>> /etc/crontab

八.   hangcheck-timer模块配置
1.查看模块位置
[iyunv@rac1 ~]#find /lib/modules/ -name "hangcheck"
[iyunv@rac1 ~]#find /lib/modules/ -name "hangcheck-timer.ko"
/lib/modules/2.6.18-398.el5/kernel/drivers/char/hangcheck-timer.ko

2.配置系统启动时自动加载模块,添加以下内容
[iyunv@rac1 ~]#modprobe hangcheck-timer
[iyunv@rac1 ~]# vi/etc/rc.d/rc.local
modprobehangcheck-timer

3.配置 hangcheck-timer参数,添加以下内容
[iyunv@rac1~]#  vi /etc/modprobe.conf
optionshangcheck-timer hangcheck_tick=30 hangcheck_margin=180

4.确认模块加载成功
[iyunv@rac1 ~]#grep Hangcheck /var/log/messages |tail -2
Mar 27 10:45:55localhost kernel: Hangcheck: starting hangcheck timer 0.9.0 (tick is 180seconds, margin is 60 seconds).
Mar 27 10:45:55localhost kernel: Hangcheck: Using monotonic_clock().

九.配置ssh等价
注意:                  
1.这一步是以oracle用户来操作的,需在配置hosts文件后再进行 ;
2.必须保证每个节点上Oracle用户的UID和DBA组的GID相同。
3.因为安装rac是在其中一个节点安装,然后oracle会自动复制到其它节点。最后的测试一定要不输入密码就能显示日期,不然安装一定失败!

1.  在配置用户等价的每个节点上执行

[oracle@rac01 ~]$ cd $HOME
[oracle@rac01 ~]$ mkdir .ssh
[oracle@rac01 ~]$ chmod 700 .ssh
[oracle@rac01 ~]$ cd .ssh
[oracle@rac01 .ssh]$ pwd
/home/oracle/.ssh
[oracle@rac01 .ssh]$ ssh-keygen -t rsa  (连敲三次回车,不要输入)
[oracle@rac01 .ssh]$ ssh-keygen -t dsa  (连敲三次回车,不要输入)
[oracle@rac01 .ssh]$ cat *.pub >  authorized_keys
[oracle@rac01 .ssh]$ chmod 644  authorized_keys

2.将第一个节点上的authorized_keys拷贝到第二个节点

[oracle@rac01 .ssh]$ scp authorized_keys  oracle@192.168.0.2:/home/oracle/.ssh/keys_ser01



3.将第二个节点与第一个节点合并后的authorized_keys在拷回第一个节点

[oracle@rac02 .ssh]$ cat  keys_ser01  >>authorized_keys
[oracle@rac02.ssh]$ scp authorized_keys   oracle@192.168.0.1:/home/oracle/.ssh/

4.测试ssh登陆另一个节点,无需输入密码

ssh rac1 date
ssh rac1-privdate  
ssh rac2 date
ssh rac2-privdate  
这一步一定要测试成功才能进行后面的安装!


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-144048-1-1.html 上篇帖子: win2003x64+Oraclex64+PL/SQL安装 下篇帖子: ORA-65086: cannot open/close the pluggable database
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表