天天看点

RAC node2节点安装环境配置 日志

磁盘空间与虚拟内存检查:

[root@node2 ~]# df -h

Filesystem            Size  Used Avail Use% Mounted on

/dev/sda3              11G  5.1G  4.5G  54% /

/dev/sda1             190M   12M  169M   7% /boot

tmpfs                 296M     0  296M   0% /dev/shm

[root@node2 ~]# free

             total       used       free     shared    buffers     cached

Mem:        604324     586620      17704          0      42656     306400

-/+ buffers/cache:     237564     366760

Swap:      1534196       3352    1530844

检查操作系统版本号:

[root@node2 /]# uname -a

Linux node1 2.6.18-194.el5 #1 SMP Tue Mar 16 21:52:43 EDT 2010 i686 i686 i386 GNU/Linux

[root@node2 ~]# vi /etc/redhat-release

Red Hat Enterprise Linux Server release 4.5 (Tikanga)

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

配置主机名:

[root@node2 ~]# vi /etc/sysconfig/network

HOSTNAME=node2

配置主机名HOSTS 文件:

[root@node2 /]# vi /etc/hosts

127.0.0.1 localhost.localdomain localhost

192.168.62.240  node1

192.168.62.241  node1-vip

10.0.0.1        node1-priv

192.168.62.235  node2

192.168.62.236  node2-vip

10.0.0.2        node2-priv

配置完后,重启才能生效.

测试网络是否能互访问.

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

配置ORACLE 用户,组 安装目录:

[root@node2 opt]# groupadd -g 1001 oinstall

[root@node2 opt]# groupadd -g 1002 dba

[root@node2 opt]# useradd -u 1001 -g oinstall -G dba oracle

[root@node2 opt]# passwd oracle

Changing password for user oracle.

New UNIX password:

BAD PASSWORD: it is based on a dictionary word

Retype new UNIX password:

passwd: all authentication tokens updated successfully.

[root@node2 opt]# mkdir -p /u01/app/oracle/product/10.2.0/crs

[root@node2 opt]# mkdir -p /u01/app/oracle/product/10.2.0/rac_db

[root@node2 opt]# chown -R oracle:oinstall /u01/

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

配置系统内核参数:

root@node2 /]# vi /etc/sysctl.conf

kernel.shmall = 2097152

kernel.shmmax = 536870912  //此参数应配置物理内存1半,安装时不能小于当前值,否则检查会报错.

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 = 1048576

net.core.rmem_max = 1048576

net.core.wmem_default = 262144

net.core.wmem_max = 262144

让配置即使生效:

[root@node2 /]# sysctl -p

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

配置系统用户资源限制:

[root@node2 /]# vi /etc/security/limits.conf

--使用HugePage 内存技术,添加下面2行

Oracle soft memlock 5242880

Oracle  hard    memlock 524280

--进程句柄数量

oracle soft nproc 2047

oracle  hard    nproc   16384

-- 文件句柄

oracle soft nofile  1024

oracle  hard    nofile  65536

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

配置ORACLE 用户环境变量:

[root@node2 /]# vi /home/oracle/.bash_profile

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/rac_db

export ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs

export ORACLE_SID=oradb2    节点2实例名

export PATH=$ORA_CRS_HOME/bin:$ORACLE_HOME/bin:$PATH

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib

export LC_CTYPE=en_US.UTF-8

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export TMPDIR=/tmp

export TMP=/tmp

[root@node2 /]# source /home/oracle/.bash_profile

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

设置会话屏保:

[root@node1 orapacht]# vi /etc/pam.d/login

session    required     pam_limits.so

设置用户访问端口限制:

[root@node2 orapacht]# vi /etc/profile

if [ $USER = "oracle" ]; then

  ulimit -u 16384

  ulimit -n 65536

fi

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

配置 hangcheck-timer 模块

Hangcheck-timer 是Linux 提供的一个内核级的IO-Fencing 模块, 这个模块会监控Linux 内核运行状态, 如果长时间挂起, 这个模块会自动重启系统。 这个模块在Linux 内核空间运行, 不会受系统负载的影响。 这个模块会使用CPU的Time Stamp Counter(TSC) 寄存器,这个寄存器的值会在每个时钟周期自动增加, 因此使用的是硬件时间,所以精度更高。

配置这个模块需要2个参数: hangcheck_tick 和 hangcheck_margin。

hangcheck_tick用于定义多长时间检查一次,缺省值是30秒。 有可能内核本身很忙, 导致这个检查被推迟, 该模块还允许定义一个延迟上限,就是hangcheck_margin, 它的缺省值是180秒。

Hangcheck-timer 模块会根据hangcheck_tick 的设置,定时检查内核。只要2次检查的时间间隔小于 hangcheck_tick + hangchec_margin, 都会认为内核运行正常,否则就意味着运行异常,这个模块会自动重启系统。

CRS本身还有一个MissCount 参数,可以通过crsctl get css miscount 命令查看。

当RAC结点间的心跳信息丢失时, Clusterware 必须确保在进行重构时,故障结点确实是Dead 状态,否则结点仅是临时负载过高导致心跳丢失,然后其他结点开始重构,但是结点没有重启,这样会损坏数据库。 因此MissCount 必须大于 hangcheck_tick+hangcheck_margin的和。

查看模块位置:

[root@node2 /]# find /lib/modules -name "hangcheck-timer.ko"

/lib/modules/2.6.18-194.el5/kernel/drivers/char/hangcheck-timer.ko

修改以下配置:

[root@node2 orapacht]# vi /etc/modprobe.conf

options hangcheck-timer hangcheck_tick=30 hangcheck_margin=180

配置系统启动时自动加载模块:

[root@node2 orapacht]# vi /etc/rc.d/rc.local

/sbin/modprobe hangcheck_timer

加载模块:

[root@node2 orapacht]# modprobe hangcheck_timer

确认模块加载成功:

[root@node2 orapacht]# grep hangcheck /var/log/messages |tail -2

Sep 20 12:40:28 node1 kernel: Hangcheck: starting hangcheck timer 0.9.0 (tick is 30 seconds, margin is 180 seconds).

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

安装ASM实例软件包:

[root@node2 opt]# rpm -qa |grep oracleasm

[root@node2 opt]# ls

oracleasm-2.6.18-194.el5-2.0.5-1.el5.i686.rpm  oracleasm-support-2.1.7-1.el5.i386.rpm

oracleasmlib-2.0.4-1.el5.i386.rpm

[root@node2 opt]# rpm -ivh oracleasm*.rpm

warning: oracleasm-2.6.18-194.el5-2.0.5-1.el5.i686.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159

Preparing...                ########################################### [100%]

   1:oracleasm-support      ########################################### [ 33%]

   2:oracleasm-2.6.18-194.el########################################### [ 67%]

   3:oracleasmlib           ########################################### [100%]

配置ASM 设置用户与属组 随系统自启动:

[root@node2 opt]# /etc/init.d/oracleasm configure

Configuring the Oracle ASM library driver.

This will configure the on-boot properties of the Oracle ASM library

driver.  The following questions will determine whether the driver is

loaded on boot and what permissions it will have.  The current values

will be shown in brackets ('[]').  Hitting <ENTER> without typing an

answer will keep that current value.  Ctrl-C will abort.

Default user to own the driver interface []: oracle

Default group to own the driver interface []: dba

Start Oracle ASM library driver on boot (y/n) [n]: y

Scan for Oracle ASM disks on boot (y/n) [y]: y

Writing Oracle ASM library driver configuration: done

Initializing the Oracle ASMLib driver:                     [  OK  ]

Scanning the system for Oracle ASMLib disks:               [  OK  ]

继续阅读