您的位置:首页 > 数据库 > Oracle

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

2017-04-13 15:45 525 查看
#依赖包安装

#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磁盘组重建
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: