Oracle11R2 RAC的搭建过程

39次阅读
没有评论

共计 8538 个字符,预计需要花费 22 分钟才能阅读完成。

这篇文章主要介绍“Oracle11R2 RAC 的搭建过程”,在日常操作中,相信很多人在 Oracle11R2 RAC 的搭建过程问题上存在疑惑,丸趣 TV 小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Oracle11R2 RAC 的搭建过程”的疑惑有所帮助!接下来,请跟着丸趣 TV 小编一起来学习吧!

一:禁用 selinux

vi /etc/sysconfig/selinux

SELINUX=enforcing                          # 将此处修改为 SELINUX=disabled

二:关闭防火墙

# /etc/rc.d/init.d/iptables stop

Flushing firewall rules: [OK]

Setting chains to policy ACCEPT: filter [OK]

Unloading iptables modules: [OK] 

然后,针对下一次服务器重新引导关闭 UDP ICMP 拒绝(应该始终被关闭):

# chkconfig iptables off

          重新启动操作系统

           # init 6

          验证结果

# /etc/rc.d/init.d/iptables status

Firewall is stopped.

# getenforce

Disabled

cd /etc/sysconfig/network-script/

vi ifcfg-eth0

IPADDR=192.168.56.120

NETMASK=255.255.255.0

GATEWAY=192.168.56.1

vi ifcfg-eth2

IPADDR=192.168.0.110

NETMASK=255.255.255.0

GATEWAY=192.168.0.1

三:编辑 HOSTS

#public ip

192.168.56.120  linux1

192.168.56.123  linux2

#virtual ip

192.168.56.121  linux1-vip

192.168.56.124  linux2-vip

#private ip

192.168.0.110   linux1-priv

192.168.0.111   linux2-priv

#scan ip

192.168.56.125  linux-scan

四:挂载 yum 源

mount /dev/cdrom /media

[rhe16]

name=rhe16

baseurl=file:///media/Server

enabled=1

gpgcheck=0

gpgkey-file:///media/RPM-GPG-KEY-redhat-release

五:安装依赖包

yum install compat-libstdc++-33 glibc glibc-devel glibc-headers ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh compat-libcap1 compat-libstdc++ elfutils-libelf-devel gcc-c++ 

yum install binutils compat-db compat-libstdc++-296 control-center gcc gcc-c++ glibc glibc-common libstdc++ libstdc++-devel make sysstat setarch glibc-devel libaio ksh glibc-headers libgnome libgcc libgnomeui libgomp openmotif libXp

六:创建用户和组

groupadd -g 500 oinstall

groupadd -g 501 dba

groupadd -g 503 asmadmin

groupadd -g 504 asmoper

groupadd -g 505 asmdba

useradd  -u 500 -g oinstall -G dba,asmdba oracle

useradd  -u 501 -g oinstall -G asmadmin,asmdba,asmoper,dba grid

七:创建文件路径

(1) 创建 inventor 路径

mkdir -p /u01/app/oraInventory

chown -R grid:oinstall /u01/app/oraInventory

chmod -R 775 /u01/app

(2) 创建 GI 主目录

mkdir -p /u01/11.2.0/grid

mkdir -p /u01/grid/11.2.0/crs_1

chown -R grid:oinstall /u01/11.2.0

chmod -R 775 /u01/11.2.0

(3) 创建数据库主目录

mkdir -p /u01/app/oracle

mkdir -p /u01/app/oracle/cfgtoollogs

chown -R oracle:oinstall /u01/app/oracle

chmod -R 775 /u01/app/oracle

(4) 创建数据库软件主目录

mkdir -p /u01/app/oracle/product/11.2.0/db_1

chown -R  oracle:oinstall  /u01/app/oracle/product

chmod -R 775 /u01/app/oracle/product

八:创建用户环境变量

修改 gird 和 Oracle 用户的.bash_profile 文件

oracle:

# Oracle DB 11g Environment

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

export ORACLE_SID=orcl1

export ORACLE_TERM=xterm

export NLS_LANG=AMERICAN_AMERICA. AL32UTF8

export LIBPATH=$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib

export LD_LIBRARY_PATH=$ORACLE_HOME/lib32:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib:$ORACLE_HOME/RDBMS/lib:/lib:/usr/lib

export ORACLE_DOC=$ORACLE_HOME/doc

export SQLPATH=$ORACLE_HOME/dbs

export PATH=$ORACLE_HOME/OPatch:$ORACLE_HOME/bin:$JAVA_HOME/bin:$PATH:/usr/vacpp/bin:/usr/ccs/bin

export CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib

export TMP=/tmp

export TMPDIR=$TMP

export NLS_DATE_FORMAT= yyyy-mm-dd hh34:mi:ss

export NLS_TIMESTAMP_FORMAT= yyyy-mm-dd hh34:mi:ss.ff

export NLS_TIMESTAMP_TZ_FORMAT= yyyy-mm-dd hh34:mi:ss.ff

export EDITOR=vi

grid:

# Oracle DB 11g Environment

export ORACLE_BASE=/u01/11.2.0/grid

export ORACLE_HOME=/u01/grid/11.2.0/crs_1

export ORACLE_SID=+ASM1

export ORACLE_TERM=xterm

export NLS_LANG=AMERICAN_AMERICA. AL32UTF8

export ORA_NLS10=$ORACLE_HOME/nls/data

export LIBPATH=$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib

export LD_LIBRARY_PATH=$ORACLE_HOME/lib32:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib:$ORACLE_HOME/RDBMS/lib:/lib:/usr/lib

export ORACLE_DOC=$ORACLE_HOME/doc

export SQLPATH=$ORACLE_HOME/dbs

export PATH=$ORACLE_HOME/OPatch:$ORACLE_HOME/bin:$JAVA_HOME/bin:$PATH:/usr/vacpp/bin:/usr/ccs/bin

export CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib

export TMP=/tmp

export TMPDIR=$TMP

export NLS_DATE_FORMAT= yyyy-mm-dd hh34:mi:ss

export NLS_TIMESTAMP_FORMAT= yyyy-mm-dd hh34:mi:ss.ff

export NLS_TIMESTAMP_TZ_FORMAT= yyyy-mm-dd hh34:mi:ss.ff

export EDITOR=vi

九:修改参数                                                                                                                

修改内核参数 /etc/sysctl.conf                                                                                  

sed -i s/kernel.shmmax/#kernel.shmmax/g /etc/sysctl.conf                                                          

sed -i s/kernel.shmall/#kernel.shmall/g /etc/sysctl.conf                                                          

cat /etc/sysctl.conf

fs.aio-max-nr = 1048576                                                                  

fs.file-max = 6815744                                                                                              

kernel.shmall = 2097152                                                                                            

kernel.shmmax = 1073741824                                                                                          

kernel.shmmni = 4096                                                                                                

kernel.sem = 250 32000 100 128                                                                                      

net.ipv4.ip_local_port_range = 9000 65500                                                                          

net.core.rmem_default = 262144                                                                                      

net.core.rmem_max = 4194304                                                                                        

net.core.wmem_default = 262144                                                                                      

net.core.wmem_max = 1048586                                                                                        

EOF      

修改 oracle 用户限制                                                                                                  

cat /etc/security/limits.conf oracle soft nproc 2047                                                            

oracle hard nproc 16384                                                                                            

oracle soft nofile 1024                                                                                            

oracle hard nofile 65536                                                                                            

oracle soft stack  10240                                                                                            

grid soft nproc 2047                                                                                                

grid hard nproc 16384                                                                                              

grid soft nofile 1024                                                                                              

grid hard nofile 65536                                                                                              

grid soft stack 10240                                                                                              

EOF        

修改 vi /etc/pam.d/login

session required /lib/security/pam_limits.so

(pam.d 指的是验证登陆配置,login 是登陆配置文件。)

配置 /etc/profile

if [$USER = oracle]||[$USER = grid]; then

     if [$SHELL = /bin/ksh]; then

         ulimit -p 16384

         ulimit -n 65536

      else

         ulimit -u 16384 -n 65536

       fi

       umask 022

    fi

十:增加 swap 空间

   1. 检查 swap 大小和硬盘空间 free - m 查看内存和 swap | df - h 查看硬盘空间,得有 2.7G 的空间才可以

   2. 添加交换文件

mkdir -p /opt/temp

dd if=/dev/zero of=/opt/temp/swap bs=1024 count=2048000   – 这个是 2G

   3. 创建交换空间

       mkswap /opt/temp/swap

   4. 启动新增加的 2G 交换空间

   swapon /opt/temp/swap

   5. 修改 /etc/fstab, 使新加的 2G 交换空间在系统重新启动后自动生效

  echo /opt/temp/swap           swap                    swap    defaults        0 0 /etc/fstab        

十二:建立信任机制 (两个节点操作)

在 oracle 和 grid 用户下建立.ssh 文件夹

生成密钥对

mkdir .ssh

chmod 755 .ssh

ssh-keygen -t rsa

ssh-keygen -t dsa

全部回车键

cat .ssh/*.pub .ssh/authorized_keys

ssh oracle@lzl cat ~/.ssh/*.pub ~/.ssh/authorized_keys

ssh oracle@yq cat ~/.ssh/*.pub ~/.ssh/authorized_keys

ssh grid@lzl cat ~/.ssh/*.pub ~/.ssh/authorized_keys

ssh grid@yq cat ~/.ssh/*.pub ~/.ssh/authorized_keys

exec ssh-agent $SHELL

ssh-add

验证是否成功

相互 ssh node1 date

相互 ssh node2 date

相互 ssh node1-priv date

相互 ssh node2-priv date

十三:UDEV 共享存储

1.

# 首先确认是 Linux 6.0 以上版本

[root@vrh7 dev]# cat /etc/issue          

Oracle Linux Server release 6.2

Kernel \r on an \m

2.

# 添加记录到 /etc/scsi_id.config

echo options=–whitelisted –replace-whitespace   /etc/scsi_id.config

3. 

# 确认哪些块设备需要 udev 绑定

[root@vrh7 dev]# ls -l sd*

brw-rw—-. 1 root disk 8,  0 Jun 30 09:29 sda

brw-rw—-. 1 root disk 8,  1 Jun 30 09:29 sda1

brw-rw—-. 1 root disk 8,  2 Jun 30 09:29 sda2

brw-rw—-. 1 root disk 8, 16 Jun 30 09:29 sdb

brw-rw—-. 1 root disk 8, 32 Jun 30 09:29 sdc

brw-rw—-. 1 root disk 8, 48 Jun 30 09:29 sdd

brw-rw—-. 1 root disk 8, 64 Jun 30 09:29 sde

brw-rw—-. 1 root disk 8, 80 Jun 30 09:29 sdf

例如在本实例中 sdb- sdf 的块设备需要绑定

4. 将 b- f 的编号放入 for 循环中,例如:

# AUTO UDEV RULE BY Maclean Liu 2012/06/30

for i in b c d e ;

do

echo KERNEL==\ sd*\ , BUS==\ scsi\ , PROGRAM==\ /sbin/scsi_id –whitelisted –replace-whitespace –device=/dev/\$name\ , RESULT==\ `/sbin/scsi_id –whitelisted –replace-whitespace –device=/dev/sd$i`\ , NAME=\ asm-disk$i\ , OWNER=\ grid\ , GROUP=\ asmadmin\ , MODE=\ 0660\      

done

就会生成 sdb- sdf 设备绑定的 RULE,在将这些 RULE 写入到 /etc/udev/rules.d/99-oracle-asmdevices.rules 中

也可以直接利用以下脚本,写出 RULE 到 99-oracle-asmdevices.rules

# AUTO UDEV RULE BY Maclean Liu 2012/06/30

for i in f g h;

do

echo KERNEL==\ sd*\ , BUS==\ scsi\ , PROGRAM==\ /sbin/scsi_id –whitelisted –replace-whitespace –device=/dev/\$name\ , RESULT==\ `/sbin/scsi_id –whitelisted –replace-whitespace –device=/dev/sd$i`\ , NAME=\ asm-disk$i\ , OWNER=\ grid\ , GROUP=\ asmadmin\ , MODE=\ 0660\       /etc/udev/rules.d/99-oracle-asmdevices.rules

done

5. 之后运行用 root 运行 /sbin/start_udev   即可

十四:安装 cvuqdisk 软件包

rpm -ivh cvuqdisk-1.0.7-1.rpm

cat /etc/ntp.conf EOF

restrict 0.0.0.0 mask 0.0.0.0 nomodify

server 127.127.1.0

fudge 127.127.1.0 stratum 10

driftfile /var/lib/ntp/drift

broadcastdelay 0.008

authenticate no

keys /etc/ntp/keys

EOF

十五:安装前检查

1、安装前检查

./runcluvfy.sh stage -pre crsinst -n linux1,linux2 -verbose 

2、检查网络和等效性  

./runcluvfy.sh comp nodecon -n rac1,rac2 -verbose 

3、安装  

./runInstaller

到此,关于“Oracle11R2 RAC 的搭建过程”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注丸趣 TV 网站,丸趣 TV 小编会继续努力为大家带来更多实用的文章!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-28发表,共计8538字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)