版本: 11.2.0.4 系统: redhat 6.3 IP规划:
|
主机名 |
IP |
vip |
pip |
scan-ip |
|
node1 |
192.168.11.101 |
192.168.11.103 |
192.11.80.101 |
192.168.11.105 |
|
node2 |
192.168.11.102 |
192.168.11.104 |
192.11.80.102 |
安装前的准备工作
修改主机名
#NODE1 [root@localhost ~]# vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=node1 #NODE2 [root@localhost ~]# vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=node2
修改/etc/hosts
[root@node2 ~]# vi /etc/hosts #NODE1 192.168.11.101 node1 192.168.11.103 node1-vip 192.11.80.101 node1-priv #node2 192.168.11.102 node2 192.168.11.104 node2-vip 192.11.80.102 node2-priv #scan 192.168.11.105 ctcsdoc-scan [root@node1 ~]# vi /etc/hosts #NODE1 192.168.11.101 node1 192.168.11.103 node1-vip 192.11.80.101 node1-priv #node2 192.168.11.102 node2 192.168.11.104 node2-vip 192.11.80.102 node2-priv #scan 192.168.11.105 ctcsdoc-scan
关闭防火墙
service iptables stop service ip6tables stop chkconfig iptables off chkconfig ip6tables off chkconfig iptables --list
禁用SELINUX
[root@node2 ~]# vi /etc/selinux/config SELINUX=disabled [root@node1 ~]# vi /etc/selinux/config SELINUX=disabled [root@node1 ~]# setenforce 0 [root@node1 ~]# getenforce Permissive [root@node2 ~]# setenforce 0 [root@node2 ~]# getenforce Permissive
添加用户、用户组并修改密码
groupadd -g 1000 oinstall groupadd -g 1001 dba groupadd -g 1002 oper groupadd -g 1003 asmadmin groupadd -g 1004 asmdba groupadd -g 1005 asmoper useradd -u 1000 -g oinstall -G asmadmin,asmdba,asmoper,dba -d /home/grid -m grid useradd -u 1001 -g oinstall -G dba,asmdba -d /home/oracle -m oracle #如果 oracle 用户已经存在,则: usermod -g oinstall -G dba,asmdba –u 1001 oracle #为 oracle 和 grid 用户设密码: echo "oracle" | passwd --stdin oracle echo "grid" | passwd --stdin grid #设置密码永不过期 chage -M -1 oracle chage -M -1 grid chage -l oracle chage -l grid
创建安装目录
mkdir -p /u01/app/oracle mkdir -p /u01/app/grid mkdir -p /u01/app/11.2.0/grid mkdir -p /u01/app/oracle/product/11.2.0/dbhome_1 chown -R grid:oinstall /u01/app/grid chown -R grid:oinstall /u01/app/11.2.0 chown -R oracle:oinstall /u01/app/oracle chmod -R 775 /u01 mkdir -p /u01/app/oraInventory chown -R grid:oinstall /u01/app/oraInventory chmod -R 775 /u01/app/oraInventory
配置用户的环境变量文件
#oracle用户 vi /home/oracle/.bash_profile umask 022 export ORACLE_SID=tmedms1 export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS" export TMP=/tmp export TMPDIR=$TMP export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH #grid 用户 vi /home/grid/.bash_profile umask 022 export ORACLE_SID=+ASM1 export ORACLE_BASE=/u01/app/grid export ORACLE_HOME=/u01/app/11.2.0/grid export LD_LIBRARY_PATH=$ORACLE_HOME/lib export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS" export PATH=$ORACLE_HOME/bin:$PATH #配置root用户环境 vi /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 fi export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 export GRID_HOME=/u01/app/11.2.0/grid export PATH=$PATH:$HOME/bin:$GRID_HOME/bin:$GRID_HOME/OPatch export LANG=en_US.UTF-8
配yum源 安装包
#检查包安装情况
rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \
compat-libcap1 \
compat-libstdc++ \
gcc \
gcc-c++ \
glibc \
glibc-devel \
ksh \
libgcc \
libstdc++ \
libstdc++-devel \
libaio \
libaio-devel \
libXext \
libXtst \
libX11 \
libXau \
libxcb \
libXi \
make \
elfutils-libelf-devel \
sysstat | grep "not installed"
yum install -y elfutils-libelf-devel*
yum install -y compat-libstdc++*
yum install -y libaio-devel*
yum install -y ksh*
yum install -y libstdc++-devel*
yum install -y glibc-headers
yum install -y glibc-devel
yum install -y gcc-c++
关闭不必要服务
chkconfig autofs off chkconfig acpid off chkconfig sendmail off chkconfig cups-config-daemon off chkconfig cpus off chkconfig xfs off chkconfig lm_sensors off chkconfig gpm off chkconfig openibd off chkconfig pcmcia off chkconfig cpuspeed off chkconfig nfslock off chkconfig ip6tables off chkconfig rpcidmapd off chkconfig apmd off chkconfig sendmail off chkconfig arptables_jf off chkconfig microcode_ctl off chkconfig rpcgssd off chkconfig ntpd off
修改系统配置文件
--修改/etc/sysctl.conf 文件 # for oracle fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 161061273600 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 修改rac相关用户对shell的限制 vi /etc/security/limits.conf oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 grid soft nproc 2047 grid hard nproc 16384 grid soft nofile 1024 grid hard nofile 65536 修改/etc/pam.d/login 文件 echo "session required pam_limits.so" >> /etc/pam.d/login
关闭NTP
查看一下两节点时间是否相差太大,如果相差不大则不用调整,如果相差较大则需要调整时间,否则ctss需要运行很久才能使两节点一致
/sbin/service ntpd stop mv /etc/ntp.conf /etc/ntp.conf.bak service ntpd status chkconfig ntpd off
使用udev创建共享磁盘
multipath 命令查看当前可以使用的多路径磁盘
scsi_id --whitelisted --replace-whitespace --device=/dev/sdb scsi_id --whitelisted --replace-whitespace --device=/dev/sdc scsi_id --whitelisted --replace-whitespace --device=/dev/sdd scsi_id --whitelisted --replace-whitespace --device=/dev/sde [root@node1 selinux]# scsi_id --whitelisted --replace-whitespace --device=/dev/sdb 36000c29ffe2cf2b9fa20ed3be3627b50 [root@node1 selinux]# scsi_id --whitelisted --replace-whitespace --device=/dev/sdc 36000c2911b1e4457383ed9340c7ff9ef [root@node1 selinux]# scsi_id --whitelisted --replace-whitespace --device=/dev/sdd 36000c29d16724930c3f5dc2810cc8d83 [root@node1 selinux]# scsi_id --whitelisted --replace-whitespace --device=/dev/sde 36000c2972085b95eed0196b2c52ee540 [root@node2 ~]# scsi_id --whitelisted --replace-whitespace --device=/dev/sdb 36000c2972085b95eed0196b2c52ee540 [root@node2 ~]# scsi_id --whitelisted --replace-whitespace --device=/dev/sdc 36000c29ffe2cf2b9fa20ed3be3627b50 [root@node2 ~]# scsi_id --whitelisted --replace-whitespace --device=/dev/sdd 36000c2911b1e4457383ed9340c7ff9ef [root@node2 ~]# scsi_id --whitelisted --replace-whitespace --device=/dev/sde 36000c29d16724930c3f5dc2810cc8d83 [root@node2 ~]# vi /etc/udev/rules.d/99-oracle_asmdisk.rules KERNEL=="sd*", BUS=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c2972085b95eed0196b2c52ee540",NAME="asm-diskaa",OWNER="grid",GROUP="asmadmin",MODE="0660" KERNEL=="sd*", BUS=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29ffe2cf2b9fa20ed3be3627b50",NAME="asm-diskab",OWNER="grid",GROUP="asmadmin",MODE="0660" KERNEL=="sd*", BUS=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c2911b1e4457383ed9340c7ff9ef",NAME="asm-diskac",OWNER="grid",GROUP="asmadmin",MODE="0660" KERNEL=="sd*", BUS=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29d16724930c3f5dc2810cc8d83",NAME="asm-diskad",OWNER="grid",GROUP="asmadmin",MODE="0660" [root@node2 ~]# start_udev Starting udev: [ OK ] [root@node2 ~]# ls /dev/asm-disk* /dev/asm-diskaa /dev/asm-diskab /dev/asm-diskac /dev/asm-diskba
