oracle 12c rac安装(centos6.X,asm,scsi)

#依赖包安装
#rpm -q --queryformat %-{name}-%{version}-%{release}-%{arch}"\n" \binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers glibc-static kernel-headers pdksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel libstdc++-static make numactl-devel sysstat unixODBC unixODBC-devel ksh iscsi-initiator-utils oracleasm
yum install -y binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers glibc-static kernel-headers pdksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel libstdc++-static make numactl-devel sysstat unixODBC unixODBC-devel ksh iscsi-initiator-utils oracleasm


#创建用户组以及用户
groupadd -g 1000 oinstall
groupadd -g 1001 dba
groupadd -g 1002 oper
useradd  -u 1003 -g oinstall -G dba,oper oracle
useradd  -u 1004 -g oinstall -G dba,oper grid


#创建安装目录
mkdir -p /u01/oracle/db
mkdir -p /u01/grid/product
chown -R oracle:oinstall /u01
chown -R grid:oinstall /u01/grid
mkdir -p /u01/crs
chown -R grid:oinstall /u01/crs
chmod 775 /u01


#############################配置系统参数
#1.编辑 /etc/sysctl.conf 文件将以下内容添加到文件中
#kernel.shmmax指的是单个共享内存段的最大尺寸。建议设置shmmax>= SGA_MAX_SIZE 如下60g
#kernel.shmall指参数是控制共享内存页数 。Linux共享内存页大小为4KB,如60G/4k
cat >> /etc/sysctl.conf << EOF
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 15728640
kernel.shmmax = 64424509440
kernel.shmmni = 4096
kernel.sem = 1000 128000 100 128
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
net.ipv4.ip_local_range = 9000  65500
net.ipv4.ip_local_port_range = 9000  65500
EOF


#2.编完后必须使你刚才的设置生效,在终端输入以下命令
/sbin/sysctl  -p


#3.编辑 /etc/profile 在末尾加入以下内容
cat >> /etc/profile << EOF
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
EOF


#4.修改用户验证选项.编辑 /etc/pam.d/login 在末尾加上以下内容
cat >> /etc/pam.d/login << EOF
session  required  /lib64/security/pam_limits.so
session  required  pam_limits.so
EOF


#5.设置Shell Limits(系统资源限制),提高软件的运行效率.编辑 /etc/security/limits.conf,在末尾加上
cat >> /etc/security/limits.conf << EOF
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
EOF


##########################################################以上脚本批量执行




#切换到oracle用户 编辑/home/oracle/.bash_profile文件,加入以下内容: rac需要更改实例名
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_BASE=/u01/oracle; export ORACLE_BASE
ORACLE_HOME=/u01/oracle/db; export ORACLE_HOME
ORACLE_SID=rdato1; export ORACLE_SID
#ORACLE_SID=rdato2; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
umask 022


#切换到grid用户 编辑/home/grid/.bash_profile 对于grid而言oracle_home不能是oracle_base的子目录
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_SID=+ASM1; export ORACLE_SID
#ORACLE_SID=+ASM2; export ORACLE_SID
ORACLE_BASE=/u01/crs; export ORACLE_BASE
ORACLE_HOME=/u01/grid/product; export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$PATH; export PATH
ORACLE_TERM=xterm; export ORACLE_TERM


#passwd oracle
#passwd grid


#安装oracle
#su -
#xhost +
#su - oracle
#export LANG=EN_US
#./runInstaller


##########################################################以上为单实例安装,以下rac安装配置
#关闭防火墙
#永久关闭
chkconfig iptables off
#临时
service iptables stop


#关闭ntpd时间同步服务
chkconfig ntpd off
service ntpd stop
#删除配置文件以及保存了ntp后台程序pid的文件
mv /etc/ntp.conf /etc/ntp.conf.bak
rm /var/run/ntpd.pid








#############################配置iscsi服务端以及客户端
###服务端安装
#yum install -y scsi-target-utils
#启动服务并配置开机启动
#service tgtd start
#chkconfig tgtd on
#关闭防火墙
#service iptables stop
#添加目标并往目标里添加分区   为了重启后有效,将以下所有服务端命令添加到/etc/rc.d/rc.local(确保服务端先启)


#tgtadm --lld iscsi --op new --mode target --tid 1 -T scsi.disk
#tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 -b /dev/sdb
#tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 2 -b /dev/sdc
#tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 3 -b /dev/sdd
#验证目标逻辑卷
#tgtadm --lld iscsi --op show --mode target
#允许客户端访问
#tgtadm --lld iscsi --op bind --mode target --tid 1 -I ALL




###客户端安装
#yum install -y iscsi-initiator-utils
#服务端资源
iscsiadm -m discovery -t sendtargets -p 192.168.80.80
#使用 iscsiadm 登录target
iscsiadm -m node -T scsi.disk -p 192.168.80.80 -l


#查看是否可以在本地看到服务的磁盘并分区
fdisk -l
fdisk /dev/sdb


#编辑/etc/rc.d/rc.local file 添加(重启生效)
modprobe hangcheck-timer hangcheck-tick=30 hangcheck_margin=180
#chown oracle:oinstall /dev/sdb1
#chmod 755 /dev/sdb1




#############################asm安装配置
#解压asm包
cd /home/oracle
unzip oracleasm_rpms.zip
cd oracleasm_rpms
#yum install oracleasm
rpm -ivh *.rpm --force --nodeps


#配置asm
/etc/init.d/oracleasm configure
#添加init 文件使系统启动时自动加载ASMLib 非图形rc3
cd /etc/rc5.d 
ln -s ../init.d/oracleasm S99oracleasm
ln -s ../init.d/oracleasm K01oracleasm


#确认ASMLib已经可以自动加载
lsmod | grep oracleasm 
dmesg | grep oracleasm 


#创建asm磁盘 安装过后磁盘状态不在是可候选状态,需要重新创建
/etc/init.d/oracleasm createdisk ordisk1 /dev/sdb1




#############################系统配置
#修改服务器主机名 永久 vi /etc/sysconfig/network   12c需要添加NOZEROCONF=yes
hostname rac1
NOZEROCONF=yes


#关闭selinux vi /etc/selinux/config  将SELINUX=enforcing 改为SELINUX=disabled
setenforce 0


#固定ip  vi /etc/sysconfig/network-scripts/ifcfg-eth0 多网卡只需要设置一个网卡的网关
DEVICE=eth0 
HWADDR=F0:92:1C:07:25:1C 
TYPE=Ethernet 
UUID=0b08f4d3-7339-45bc-9a9a-e90e6280a449 
ONBOOT=yes 
NM_CONTROLLED=yes
BOOTPROTO=STATIC 
IPADDR=192.168.80.80
NETMASK=255.255.255.0 
GATEWAY=192.168.80.1


#编辑/etc/hosts 添加如下设置 ::1这行如果不注释的话,可能会引起sshstup脚本执行错误
127.0.0.1       localhost.localdomain   localhost
#Public
192.168.80.33   rac1
192.168.80.63   rac2
#Private
192.168.168.33  rac1-priv
192.168.168.63  rac2-priv
#Virtual
192.168.80.133  rac1-vip
192.168.80.163  rac2-vip


#############################ssh互信  以oracle和grid用户每个节点执行
su - oracle
cd $HOME
mkdir .ssh
chmod 700 .ssh
cd .ssh
ssh-keygen -t rsa
#ssh-keygen -t dsa
#节点1合成authorized_keys并scp到节点2
cat  *rsa.pub >> authorized_keys
#cat  *dsa.pub >> authorized_keys
scp authorized_keys oracle@rac2:/home/oracle/.ssh
#节点2继续合成并scp到节点1
cat  *rsa.pub >>authorized_keys
#cat  *dsa.pub >>authorized_keys
scp authorized_keys oracle@rac1:/home/oracle/.ssh


su - grid
cd $HOME
mkdir .ssh
chmod 700 .ssh
cd .ssh
ssh-keygen -t rsa
#ssh-keygen -t dsa
#节点1合成authorized_keys并scp到节点2
cat  *rsa.pub >> authorized_keys
#cat  *dsa.pub >> authorized_keys
scp authorized_keys grid@rac2:/home/grid/.ssh
#节点2继续合成并scp到节点1
cat  *rsa.pub >>authorized_keys
#cat  *dsa.pub >>authorized_keys
scp authorized_keys grid@rac1:/home/grid/.ssh


#两个节点验证ssh互信是否成功
ssh rac2 date
ssh rac1 date 
ssh rac1-priv date
ssh rac2-priv date








#############################先安装grid,运行asmca创建asmdiskgroup,安装db,最后dbca创建实例
#在oracle home目录解压grid安装包,并做安装前验证
reboot
su - grid
cd grid
#安装前验证
./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -verbose
#安装时,即便已经配置好了SSH,需要点一下setup,通过后再进行Next
./runInstall
#11G安装过程中在执行root.sh的时,遇到error while loading shared libraries: libcap.so.1: cannot open shared object file: No such file or directory 
cd /lib64
ln -s libcap.so.2.16 libcap.so.1


#再次执行root.sh时继续遇到提示 run '....../rootcrs.pl -deconfig' to configure existing failed configuration and then run root.sh
#解决办法
./rootcrs.pl -delete -force -verbose


#11G执行root.sh当出现Adding daemon to inittab这条信息的时候执行如下命令,rac服务器重启后也需要执行以下命令才能正常启动crs
/bin/dd if=/var/tmp/.oracle/npohasd of=/dev/null bs=1024 count=1






#############################Rac卸载重装,简单粗暴
rm -rf /u01/*
rm -rf /etc/ora*
rm -rf /etc/inittab.crs
rm -rf /etc/init.d/init.ohasd
rm -rf /var/tmp/.oracle


#重建安装目录
#asm磁盘组重建


你可能感兴趣的:(oracle 12c rac安装(centos6.X,asm,scsi))