ORACLE 11G RAC 部署安装文档
ORACLE 11G RAC 虚拟机部署安装文档
目录
一、系统环境监测 1
- 内存 1
- Cpu: 1
- 存储情况检查 2
- 网卡检查 2
- 环境依赖包检查 2
二、环境配置 3 - 配置/etc/hosts文件: 3
- 创建用户、口令、修改用户配置文件 4
- 创建路径、修改权限 5
- 系统信息修改 6
- 修改/etc/pam.d/login 配置文件 6
- 修改/etc/profile 文件 7
- 修改内核配置文件 7
8. shm配置 8
9. 磁盘绑定 9
10. 配置Oracle、grid用户ssh对等性 9
11. 安装环境检测以及检查中的问题描述 11
三、开始安装 12 - GI安装: 12
- Oracle Software 安装 31
四、数据库实例创建 43
一、系统环境监测
1.内存
[root@d4jtappvprd01 Packages]# free
total used free shared buffers cached
Mem: 16336460 5098080 11238380 0 60560 4636156
-/+ buffers/cache: 401364 15935096
Swap: 8454136 0 8454136
2.Cpu
查看物理cpu个数
[root@d4jtappvprd01 Packages]# grep 'physical id' /proc/cpuinfo | sort -u
physical id : 0
physical id : 1
查看核心数量
[root@d4jtappvprd01 Packages]# grep 'core id' /proc/cpuinfo | sort -u | wc -l
2
查看线程数
[root@d4jtappvprd01 Packages]# grep 'processor' /proc/cpuinfo | sort -u | wc -l
4
磁盘情况
[root@d4jtappvprd01 Packages]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/rootvg-rootlv
50G 13G 35G 27% /
tmpfs 7.8G 72K 7.8G 1% /dev/shm
/dev/sda1 194M 33M 152M 18% /boot
/dev/mapper/rootvg-oracle_lv
40G 176M 38G 1% /oracle
3.存储情况检查
其中/dev/sdb和/dev/sdc是共享存储,/dev/sdb 大小5G,用来作crs和voting disk盘,/dev/sdc大小424G,用来作数据盘:
fdisk -l
Disk /dev/sda: 64.4 GB, 64424509440 bytes
255 heads, 63 sectors/track, 7832 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 7832 62806117+ 8e Linux LVM
Disk /dev/sdb: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdb doesn't contain a valid partition table
Disk /dev/sdc: 424.1 GB, 424128020480 bytes
255 heads, 63 sectors/track, 51563 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdc doesn't contain a valid partition table
4.网卡检查
至少要配置2张网卡:
dmesg |grep eth
e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
e1000: eth1: e1000_probe: Intel(R) PRO/1000 Network Connection
5.环境依赖包检查
[root@d4jtappvprd02 Packages]# rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' \binutils binutils- compat-libcap1- compat-libstdc++-33 elfutils-libelf- elfutils-libelf-devel- glibc- glibc-common- glibc-devel- gcc- gcc-c++- libaio-devel- libaio- libgcc- libstdc++- libstdc++-devel- make- sysstat- unixODBC- unixODBC-devel- ---rehl6是不需要的
binutils-2.20.51.0.2-5.36.el6 (x86_64)
binutils-2.20.51.0.2-5.36.el6 (x86_64)
package compat-libstdc++- is not installed ------已安装,未检测出来
elfutils-libelf-0.152-1.el6 (x86_64)
elfutils-libelf-devel-0.152-1.el6 (x86_64)
glibc-2.12-1.107.el6 (x86_64)
glibc-2.12-1.107.el6 (i686)
glibc-common-2.12-1.107.el6 (x86_64)
glibc-devel-2.12-1.107.el6 (x86_64)
gcc-4.4.7-3.el6 (x86_64)
gcc-c++-4.4.7-3.el6 (x86_64)
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6 (i686)
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6 (i686)
libgcc-4.4.7-3.el6 (x86_64)
libgcc-4.4.7-3.el6 (i686)
libstdc++-4.4.7-3.el6 (x86_64)
libstdc++-devel-4.4.7-3.el6 (x86_64)
make-3.81-20.el6 (x86_64)
sysstat-9.0.4-20.el6 (x86_64)
unixODBC-2.2.14-12.el6_3 (x86_64)
unixODBC-2.2.14-12.el6_3 (i686)
unixODBC-devel-2.2.14-12.el6_3 (x86_64)
unixODBC-devel-2.2.14-12.el6_3 (i686)
二、环境配置
1.配置/etc/hosts文件:
[root@d4jtappvprd01 Packages]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
################ oracle RAC for pub ########################
10.0.35.129 d4jtappvprd01 d4jtappvprd01-pub
10.0.35.130 d4jtappvprd02 d4jtappvprd02-pub
################ oracle RAC for pri ########################
192.168.35.129 d4jtappvprd01-pri
192.168.35.130 d4jtappvprd02-pri
################ oracle RAC for vip ########################
10.0.35.131 d4jtappvprd01-vip
10.0.35.132 d4jtappvprd02-vip
################ oracle RAC for scan ip #####################
10.0.35.133 d4jtappvprd
2.创建用户、口令、修改用户配置文件
以上压缩包包含了下面所有脚本。
用户创建脚本:
############# 1preusers.sh ####################
!/bin/bash
Purpose:Create 6 groups named 'oinstall','dba','asmadmin','asmdba','asmoper','oper', plus 2 users named 'oracle','grid'.
Also setting the Environment
variable for oracle user.
variable for grid user.
Usage:Log on as the superuser('root'),and then execute the command:#./1preusers.sh
echo "Now create 6 groups named 'oinstall','dba','asmadmin','asmdba','asmoper','oper'"
echo "Plus 2 users named 'oracle','grid',Also setting the Environment"
groupadd -g 1000 oinstall
groupadd -g 1002 asmadmin
groupadd -g 1003 asmdba
groupadd -g 1004 asmoper
useradd -u 1001 -g oinstall -G asmadmin,asmdba,asmoper -d /home/grid -s /bin/bash -c "grid Infrastructure Owner" grid
echo "grid" | passwd --stdin grid
echo "export TMP=/tmp">> /home/grid/.bash_profile
echo 'export TMPDIR=$TMP'>>/home/grid/.bash_profile
echo "export ORACLE_SID=+ASM1">> /home/grid/.bash_profile
echo "export ORACLE_BASE=/home/oracle/app/grid">> /home/grid/.bash_profile
echo "export ORACLE_HOME=/home/oracle/app/11.2.0/grid">> /home/grid/.bash_profile
echo "export ORACLE_TERM=xterm">> /home/grid/.bash_profile
echo "export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'" >> /home/grid/.bash_profile
echo 'export TNS_ADMIN=$ORACLE_HOME/network/admin' >> /home/grid/.bash_profile
echo 'export PATH=/usr/sbin:$PATH'>> /home/grid/.bash_profile
echo 'export PATH=$ORACLE_HOME/bin:$PATH'>> /home/grid/.bash_profile
echo 'export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib'>> /home/grid/.bash_profile
echo 'export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib'>> /home/grid/.bash_profile
echo "export EDITOR=vi" >> /home/grid/.bash_profile
echo "export NLS_LANG=american_america.AL32UTF8" >> /home/grid/.bash_profile
echo "umask 022">> /home/grid/.bash_profile
groupadd -g 1001 dba
groupadd -g 1005 oper
useradd -u 1000 -g oinstall -G dba,oper,asmdba -d /home/oracle -s /bin/bash -c "Oracle Software Owner" oracle
echo "oracle" | passwd --stdin oracle
echo "export TMP=/tmp">> /home/oracle/.bash_profile
echo 'export TMPDIR=$TMP'>>/home/oracle/.bash_profile
echo "export ORACLE_HOSTNAME=hostname ">> /home/oracle/.bash_profile
echo "export ORACLE_SID=sid_name">> /home/oracle/.bash_profile
echo "export ORACLE_BASE=/home/oracle/app/db">> /home/oracle/.bash_profile
echo 'export ORACLE_HOME=/home/oracle/app/11.2.0/db_1'>> /home/oracle/.bash_profile
echo 'export TNS_ADMIN=$ORACLE_HOME/network/admin' >> /home/oracle/.bash_profile
echo "export ORACLE_TERM=xterm">> /home/oracle/.bash_profile
echo 'export PATH=/usr/sbin:$PATH'>> /home/oracle/.bash_profile
echo 'export PATH=$ORACLE_HOME/bin:$PATH'>> /home/oracle/.bash_profile
echo 'export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib'>> /home/oracle/.bash_profile
echo 'export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib'>> /home/oracle/.bash_profile
echo "export EDITOR=vi" >> /home/oracle/.bash_profile
echo "export LANG=en_US" >> /home/oracle/.bash_profile
echo "export NLS_LANG=american_america.AL32UTF8" >> /home/oracle/.bash_profile
echo "export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'" >> /home/oracle/.bash_profile
echo "umask 022">> /home/oracle/.bash_profile
echo "The Groups and users has been created"
echo "The Environment for grid,oracle also has been set successfully"
3.创建路径、修改权限
创建脚本:
################### 2predir.sh #######################
!/bin/bash
Purpose:Create the necessary directory for oracle,grid users and change the authention to oracle,grid users.
Usage:Log on as the superuser('root'),and then execute the command:#./2predir.sh
echo "Now create the necessary directory for oracle,grid users and change the authention to oracle,grid users..."
mkdir -p /home/oracle/app/grid
mkdir -p /home/oracle/app/11.2.0/grid
mkdir -p /home/oracle/app/11.2.0/db_1
mkdir -p /home/oracle/app/db
chown -R oracle:oinstall /home/oracle
chown -R oracle:oinstall /home/oracle/app/db
chown -R grid:oinstall /home/oracle/app/grid
chown -R oracle:oinstall /home/oracle/app/11.2.0/db_1
chown -R grid:oinstall /home/oracle/app/11.2.0/grid
chmod -R 775 /home/oracle
echo "The necessary directory for oracle,grid users and change the authention to oracle,grid users has been finished"
4.系统信息修改
修改/etc/security/limits.conf 配置Oracle、grid用户的shell限制:
修改脚本:
############ 3prelimits.sh #############################
!/bin/bash
Purpose:Change the /etc/security/limits.conf.
Usage:Log on as the superuser('root'),and then execute the command:#./3prelimits.sh
echo "Now modify the /etc/security/limits.conf,but backup it named /etc/security/limits.conf.bak before"
cp /etc/security/limits.conf /etc/security/limits.conf.bak
echo "oracle soft nproc 16384" >>/etc/security/limits.conf
echo "oracle hard nproc 16384" >>/etc/security/limits.conf
echo "oracle soft nofile 65536" >>/etc/security/limits.conf
echo "oracle hard nofile 65536" >>/etc/security/limits.conf
echo "grid soft nproc 16384" >>/etc/security/limits.conf
echo "grid hard nproc 16384" >>/etc/security/limits.conf
echo "grid soft nofile 65536" >>/etc/security/limits.conf
echo "grid hard nofile 65536" >>/etc/security/limits.conf
echo "Modifing the /etc/security/limits.conf has been succeed."
5.修改/etc/pam.d/login 配置文件
修改脚本:
############ 4prelogin.sh #############################
!/bin/bash
Purpose:Modify the /etc/pam.d/login.
Usage:Log on as the superuser('root'),and then execute the command:#./4prelimits.sh
echo "Now modify the /etc/pam.d/login,but with a backup named /etc/pam.d/login.bak"
cp /etc/pam.d/login /etc/pam.d/login.bak
echo "session required /lib64/security/pam_limits.so" >>/etc/pam.d/login
echo "session required pam_limits.so" >>/etc/pam.d/login
echo "Modifing the /etc/pam.d/login has been succeed."
6.修改/etc/profile 文件
修改脚本:
############ 5preprofile.sh ##########################
!/bin/bash
Purpose:Modify the /etc/profile.
Usage:Log on as the superuser('root'),and then execute the command:#./5preprofile.sh
echo "Now modify the /etc/profile,but with a backup named /etc/profile.bak"
cp /etc/profile /etc/profile.bak
echo 'if [ $USER = "oracle" ]||[ $USER = "grid" ]; then' >> /etc/profile
echo 'if [ $SHELL = "/bin/ksh" ]; then' >> /etc/profile
echo 'ulimit -p 16384' >> /etc/profile
echo 'ulimit -n 65536' >> /etc/profile
echo 'else' >> /etc/profile
echo 'ulimit -u 16384 -n 65536' >> /etc/profile
echo 'fi' >> /etc/profile
echo 'fi' >> /etc/profile
echo "Modifing the /etc/profile has been succeed."
7.修改内核配置文件
修改脚本:
############ 6presysctl.sh ############################
!/bin/bash
Purpose:Modify the /etc/sysctl.conf.
Usage:Log on as the superuser('root'),and then execute the command:#./6presysctl.sh
echo "Now modify the /etc/sysctl.conf,but with a backup named /etc/sysctl.bak"
cp /etc/sysctl.conf /etc/sysctl.conf.bak
echo "fs.aio-max-nr = 1048576" >> /etc/sysctl.conf
echo "fs.file-max = 6815744" >> /etc/sysctl.conf
echo "kernel.shmall = 2097152" >> /etc/sysctl.conf
echo "kernel.shmmax = 8589934592" >> /etc/sysctl.conf
echo "kernel.shmmni = 4096" >> /etc/sysctl.conf
echo "kernel.sem = 250 32000 100 128" >> /etc/sysctl.conf
echo "net.ipv4.ip_local_port_range = 9000 65500" >> /etc/sysctl.conf
echo "net.core.rmem_default = 262144" >> /etc/sysctl.conf
echo "net.core.rmem_max = 4194304" >> /etc/sysctl.conf
echo "net.core.wmem_default = 262144" >> /etc/sysctl.conf
echo "net.core.wmem_max = 1048586" >> /etc/sysctl.conf
echo "net.ipv4.tcp_wmem = 262144 262144 262144" >> /etc/sysctl.conf
echo "net.ipv4.tcp_rmem = 4194304 4194304 4194304" >> /etc/sysctl.conf
echo "Modifing the /etc/sysctl.conf has been succeed."
echo "Now make the changes take effect....."
sysctl -p
运行上述脚本,即可完成配置。
8.shm配置
11g如果要使用自动内存管理,且数据库使用需求的总内存大于物理内存的一半的时候,需要重新配置shm。
比如,物理内存为16G,shm默认配置只有8G,如果数据库总内存使用预计12G左右,则要配置shm大于或等于12G,这里配置13G:
umount /dev/shm -l
mount -t tmpfs -o size=13G tmpfs /dev/shm
写到fstab中:
9.磁盘绑定
使用udev对磁盘进行绑定,两个节点均要执行。
/sbin/scsi_id -g -u -s /block/sdb
36000c29d25bb40b138643bc7fc964df3
/sbin/scsi_id -g -u -s /block/sdc
36000c291f7344f6f3a324d0e6465bfe9
ls -l /dev/disk/by-id/scsi-*
touch /etc/udev/rules.d/99-oracle-asmdevices.rules
vi /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL"sd*",BUS"scsi", PROGRAM"/sbin/scsi_id -g -u /dev/$name",RESULT"36000c29d25bb40b138643bc7fc964df3",NAME="asm-crsdisk", OWNER="grid", GROUP="asmadmin",MODE="0660"
KERNEL"sd*",BUS"scsi", PROGRAM"/sbin/scsi_id -g -u /dev/$name",RESULT"36000c291f7344f6f3a324d0e6465bfe9",NAME="asm-datadisk", OWNER="grid", GROUP="asmadmin",MODE="0660"
然后执行命令:start_udev即可
添加自启动udev:
echo "/sbin/start_udev" >>/etc/rc.local
检查盘:
ls -l /dev/asm*
brw-rw---- 1 grid asmadmin 8, 16 Mar 31 16:42 /dev/asm-crsdisk
brw-rw---- 1 grid asmadmin 8, 32 Mar 31 16:35 /dev/asm-datadisk
10.配置Oracle、grid用户ssh对等性
以oracle用户为例,在d4jtfmcvurd 01上执行以下命令
[root@d4jtappvprd01 ~]# su - oracle
[oracle@d4jtappvprd01 ~]$ mkdir ~/.ssh
[oracle@d4jtappvprd01 ~]$ chmod 755 .ssh
[oracle@d4jtappvprd01 ~]$ cd .ssh/
[oracle@d4jtappvprd01 .ssh]$ ssh-keygen -t dsa
[oracle@d4jtappvprd01 .ssh]$ ssh-keygen -t rsa
[oracle@d4jtappvprd01 .ssh]$ cat *.pub >> authorized_keys
[root@d4jtappvprd02 ~]# su - oracle
[oracle@d4jtappvprd02 ~]$ mkdir ~/.ssh
[oracle@d4jtappvprd02 ~]$ chmod 755 .ssh
[oracle@d4jtappvprd02 ~]$ cd .ssh/
[oracle@d4jtappvprd02 .ssh]$ ssh-keygen -t dsa
[oracle@d4jtappvprd02 .ssh]$ ssh-keygen -t rsa
[root@d4jtappvprd01 .ssh]# scp ./authorized_keys 10.0.35.130:/home/oracle/.ssh/authorized_keys
[root@d4jtappvprd02 .ssh]# cat *.pub >> authorized_keys
[root@d4jtappvprd02 .ssh]# scp ./authorized_keys 10.0.35.129:/home/oracle/.ssh/authorized_keys
[root@d4jtappvprd01 .ssh]# chown -R oracle.oinstall authorized_keys
[root@d4jtappvprd02 .ssh]# chown -R oracle.oinstall authorized_keys
测试oracle用户的等效性:
[oracle@d4jtappvprd01 ~]$ ssh 10.0.35.129 date
Mon Sep 22 16:30:36 HKT 2014
[oracle@d4jtappvprd01 ~]$ ssh 10.0.35.130 date
Mon Sep 22 16:30:39 HKT 2014
[oracle@d4jtappvprd01 ~]$ ssh d4jtappvprd01 date
Mon Sep 22 16:30:42 HKT 2014
[oracle@d4jtappvprd01 ~]$ ssh d4jtappvprd02 date
Mon Sep 22 16:30:46 HKT 2014
[oracle@d4jtappvprd02 ~]$ ssh 10.0.35.129 date
Mon Sep 22 16:31:07 HKT 2014
[oracle@d4jtappvprd02 ~]$ ssh 10.0.35.130 date
Mon Sep 22 16:31:10 HKT 2014
[oracle@d4jtappvprd02 ~]$ ssh d4jtappvprd01 date
Mon Sep 22 16:31:13 HKT 2014
[oracle@d4jtappvprd02 ~]$ ssh d4jtappvprd02 date
Mon Sep 22 16:31:16 HKT 2014
Grid用户的等效性配置相同此处只做测试结果:
[grid@d4jtappvprd01 .ssh]$ ssh 10.0.35.129 date
Mon Sep 22 17:00:31 HKT 2014
[grid@d4jtappvprd01 .ssh]$ ssh 10.0.35.130 date
Mon Sep 22 17:00:35 HKT 2014
[grid@d4jtappvprd01 .ssh]$ ssh d4jtappvprd01 date
Mon Sep 22 17:00:38 HKT 2014
[grid@d4jtappvprd01 .ssh]$ ssh d4jtappvprd02 date
Mon Sep 22 17:00:40 HKT 2014
[grid@d4jtappvprd02 .ssh]$ ssh 10.0.35.129 date
Mon Sep 22 17:01:06 HKT 2014
[grid@d4jtappvprd02 .ssh]$ ssh 10.0.35.130 date
Mon Sep 22 17:01:08 HKT 2014
[grid@d4jtappvprd02 .ssh]$ ssh d4jtappvprd01 date
Mon Sep 22 17:01:11 HKT 2014
[grid@d4jtappvprd02 .ssh]$ ssh d4jtappvprd02 date
Mon Sep 22 17:01:16 HKT 2014
两个节点同样要对本机进行ssh登陆,并且连续输入yes,如果第二次不需输入密码,则配置成功。否则在安装grid是会报错,当然也可以在安装过程中配置ssh等效亦可。
11.安装环境检测以及检查中的问题描述
./runcluvfy.sh stage -pre crsinst -n d4jtfmcvurd01,d4jtfmcvurd02 -verbose
Check: Swap space
Node Name Available Required Status
d4jtappvprd02 8.0625GB (8454136.0KB) 15.5797GB (1.633646E7KB) failed
d4jtappvprd01 8.0625GB (8454136.0KB) 15.5797GB (1.633646E7KB) failed
Check: Package existence for "pdksh"
Node Name Available Required Status
d4jtappvprd02 missing pdksh-5.2.14 failed
d4jtappvprd01 missing pdksh-5.2.14 failed
Result: Package existence check failed for "pdksh"
Swap不足情况解决:
[root@d4jtappvprd02 scripts]# dd of=./swapextend if=/dev/zero bs=1M count=8192
8192+0 records in
8192+0 records out
8589934592 bytes (8.6 GB) copied, 12.3776 s, 694 MB/s
[root@d4jtappvprd02 scripts]# mkswap swapextend
mkswap: swapextend: warning: don't erase bootbits sectors
on whole disk. Use -f to force.
Setting up swapspace version 1, size = 8388604 KiB
no label, UUID=e4b9a169-2db5-426d-b150-d59d29e0f1f5
[root@d4jtappvprd02 scripts]# swapon swapextend
[root@d4jtappvprd02 scripts]# free
total used free shared buffers cached
Mem: 16336460 10445864 5890596 0 146324 9692564
-/+ buffers/cache: 606976 15729484
Swap: 16842736 0 16842736
再次检查结果:
Check: Swap space
Node Name Available Required Status
d4jtappvprd02 16.0625GB (1.6842736E7KB) 15.5797GB (1.633646E7KB) passed
d4jtappvprd01 16.0625GB (1.6842736E7KB) 15.5797GB (1.633646E7KB) passed
Result: Swap space check passed
次外,可能存在ntp问题:
因我们在改测试环境中,需要使用ntp作为时间同步服务,而不是采用oracle的ctss进行时间校验,故此需要配置ntp相关服务,注意ntp配置后在检测时出现如下问题:
PRVF-5436 : The NTP daemon running on one or more nodes lacks the slewing option "-x"
该问题的产生以及解决方法:
因为启动了NTP服务,并且没有加上-X这个参数。增加这个参数,不同的参数系统用不同方法,下面是LINUX的方法。
到/etc/sysconfig/目录下
[root@d4jtfmcvurd02 ~]# cat ntpd
Drop root to id ‘ntp:ntp’ by default. Requires kernel >= 2.2.18.
OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"
Ntp服务配置完成后重启ntp即可 service ntpd restart即可,注意两个节点均需要修改。
三、开始安装
1.GI安装:
[grid@d4jtappvprd01 grid]$ ./runInstaller
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB. Actual 26882 MB Passed
Checking swap space: must be greater than 150 MB. Actual 16447 MB Passed
Checking monitor: must be configured to display at least 256 colors. Actual 16777216 Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2014-09-24_01-55-57PM. Please wait ...[grid@d4jtappvprd01 grid]$
跳过软件更新:
安装并配置RAC,默认即可:
选择高级安装:
语言选择:
Cluster以及scan名称,注意scan名称一定要写/etc/hosts文件中配置的名称,端口根据客户要求配置1521,不配置GNS:
节点信息添加,并测试ssh等效性是否可用:
网络接口类型选择:
存储信息选择,选择ASM存储:
磁盘选择,修改磁盘位置:
选择规划好的心跳盘/dev/asm-crsdisk,磁盘组名为CRS,外部冗余:
ASM密码设定:
不选择IPMI功能:
操作系统权限组选择:
安装位置选择:
创建Inventory目录:
安装条件检测结果:
上述情况可忽略不计,对安装未有太大影响。
确定下一步:
开始安装:
安装进度:
根据提示按顺序节点执行相关脚本:
分别在节点一、节点二执行:
节点一:
[root@d4jtappvprd01 oracle]# id
uid=0(root) gid=0(root) groups=0(root)
[root@d4jtappvprd01 oracle]# sh /oracle/app/oraInventory/orainstRoot.sh
Changing permissions of /oracle/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /oracle/app/oraInventory to oinstall.
The execution of the script is complete.
[root@d4jtappvprd01 oracle]# sh /oracle/app/11.2.0/grid/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /oracle/app/11.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /oracle/app/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
User ignored Prerequisites during installation
Installing Trace File Analyzer
OLR initialization - successful
root wallet
root wallet cert
root cert export
peer wallet
profile reader wallet
pa wallet
peer wallet keys
pa wallet keys
peer cert request
pa cert request
peer cert
pa cert
peer root cert TP
profile reader root cert TP
pa root cert TP
peer pa cert TP
pa peer cert TP
profile reader pa cert TP
profile reader peer cert TP
peer user cert
pa user cert
Adding Clusterware entries to upstart
CRS-2672: Attempting to start 'ora.mdnsd' on 'd4jtappvprd01'
CRS-2676: Start of 'ora.mdnsd' on 'd4jtappvprd01' succeeded
CRS-2672: Attempting to start 'ora.gpnpd' on 'd4jtappvprd01'
CRS-2676: Start of 'ora.gpnpd' on 'd4jtappvprd01' succeeded
CRS-2672: Attempting to start 'ora.cssdmonitor' on 'd4jtappvprd01'
CRS-2672: Attempting to start 'ora.gipcd' on 'd4jtappvprd01'
CRS-2676: Start of 'ora.cssdmonitor' on 'd4jtappvprd01' succeeded
CRS-2676: Start of 'ora.gipcd' on 'd4jtappvprd01' succeeded
CRS-2672: Attempting to start 'ora.cssd' on 'd4jtappvprd01'
CRS-2672: Attempting to start 'ora.diskmon' on 'd4jtappvprd01'
CRS-2676: Start of 'ora.diskmon' on 'd4jtappvprd01' succeeded
CRS-2676: Start of 'ora.cssd' on 'd4jtappvprd01' succeeded
ASM created and started successfully.
Disk Group CRSVG created successfully.
clscfg: -install mode specified
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
CRS-4256: Updating the profile
Successful addition of voting disk 6a239ece3d984fc8bfadbd38e84fbe08.
Successfully replaced voting disk group with +CRS.
CRS-4256: Updating the profile
CRS-4266: Voting file(s) successfully replaced
STATE File Universal Id File Name Disk group
- ONLINE 6a239ece3d984fc8bfadbd38e84fbe08 (/dev/asm-crsdisk) [CRS]
Located 1 voting disk(s).
CRS-2672: Attempting to start 'ora.asm' on 'd4jtappvprd01'
CRS-2676: Start of 'ora.asm' on 'd4jtappvprd01' succeeded
CRS-2672: Attempting to start 'ora.CRSVG.dg' on 'd4jtappvprd01'
CRS-2676: Start of 'ora.CRS.dg' on 'd4jtappvprd01' succeeded
Preparing packages for installation...
cvuqdisk-1.0.9-1
Configure Oracle Grid Infrastructure for a Cluster ... succeeded
[root@d4jtappvprd01 oracle]#
节点二:
[root@d4jtappvprd02 oracle]# id
uid=0(root) gid=0(root) groups=0(root)
[root@d4jtappvprd02 oracle]# sh /oracle/app/oraInventory/orainstRoot.sh
Changing permissions of /oracle/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /oracle/app/oraInventory to oinstall.
The execution of the script is complete.
[root@d4jtappvprd02 oracle]# sh /oracle/app/11.2.0/grid/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /oracle/app/11.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /oracle/app/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
User ignored Prerequisites during installation
Installing Trace File Analyzer
OLR initialization - successful
Adding Clusterware entries to upstart
CRS-4402: The CSS daemon was started in exclusive mode but found an active CSS daemon on node d4jtappvprd01, number 1, and is terminating
An active cluster was found during exclusive startup, restarting to join the cluster
Preparing packages for installation...
cvuqdisk-1.0.9-1
Configure Oracle Grid Infrastructure for a Cluster ... succeeded
执行完成后,确定即可进行后面组件的安装。

在结束后可能报如下错误,确定即可:

下一步弹出提示,确定即可:

致此GI安装结束:

安装后确认安装情况:
[grid@d4jtappvprd01 ~]$ crs_stat -t -v
Name Type R/RA F/FT Target State Host
ora.CRS.dg ora....up.type 0/5 0/ ONLINE ONLINE d4jt...rd01
ora....ER.lsnr ora....er.type 0/5 0/ ONLINE ONLINE d4jt...rd01
ora....N1.lsnr ora....er.type 0/5 0/0 ONLINE ONLINE d4jt...rd01
ora.asm ora.asm.type 0/5 0/ ONLINE ONLINE d4jt...rd01
ora.cvu ora.cvu.type 0/5 0/0 ONLINE ONLINE d4jt...rd01
ora....SM1.asm application 0/5 0/0 ONLINE ONLINE d4jt...rd01
ora....01.lsnr application 0/5 0/0 ONLINE ONLINE d4jt...rd01
ora....d01.gsd application 0/5 0/0 OFFLINE OFFLINE
ora....d01.ons application 0/3 0/0 ONLINE ONLINE d4jt...rd01
ora....d01.vip ora....t1.type 0/0 0/0 ONLINE ONLINE d4jt...rd01
ora....SM2.asm application 0/5 0/0 ONLINE ONLINE d4jt...rd02
ora....02.lsnr application 0/5 0/0 ONLINE ONLINE d4jt...rd02
ora....d02.gsd application 0/5 0/0 OFFLINE OFFLINE
ora....d02.ons application 0/3 0/0 ONLINE ONLINE d4jt...rd02
ora....d02.vip ora....t1.type 0/0 0/0 ONLINE ONLINE d4jt...rd02
ora.gsd ora.gsd.type 0/5 0/ OFFLINE OFFLINE
ora....network ora....rk.type 0/5 0/ ONLINE ONLINE d4jt...rd01
ora.oc4j ora.oc4j.type 0/1 0/2 ONLINE ONLINE d4jt...rd01
ora.ons ora.ons.type 0/3 0/ ONLINE ONLINE d4jt...rd01
ora....ry.acfs ora....fs.type 0/5 0/ ONLINE ONLINE d4jt...rd01
ora.scan1.vip ora....ip.type 0/0 0/0 ONLINE ONLINE d4jt...rd01
[grid@d4jtappvprd02 ~]$ crsctl stat res -t
NAME TARGET STATE SERVER STATE_DETAILS
Local Resources
ora.CRS.dg
ONLINE ONLINE d4jtappvprd01
ONLINE ONLINE d4jtappvprd02
ora.LISTENER.lsnr
ONLINE ONLINE d4jtappvprd01
ONLINE ONLINE d4jtappvprd02
ora.asm
ONLINE ONLINE d4jtappvprd01 Started
ONLINE ONLINE d4jtappvprd02 Started
ora.gsd
OFFLINE OFFLINE d4jtappvprd01
OFFLINE OFFLINE d4jtappvprd02
ora.net1.network
ONLINE ONLINE d4jtappvprd01
ONLINE ONLINE d4jtappvprd02
ora.ons
ONLINE ONLINE d4jtappvprd01
ONLINE ONLINE d4jtappvprd02
ora.registry.acfs
ONLINE ONLINE d4jtappvprd01
ONLINE ONLINE d4jtappvprd02
Cluster Resources
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE d4jtappvprd01
ora.cvu
1 ONLINE ONLINE d4jtappvprd01
ora.d4jtappvprd01.vip
1 ONLINE ONLINE d4jtappvprd01
ora.d4jtappvprd02.vip
1 ONLINE ONLINE d4jtappvprd02
ora.oc4j
1 ONLINE ONLINE d4jtappvprd01
ora.scan1.vip
1 ONLINE ONLINE d4jtappvprd01
[grid@d4jtappvprd02 ~]$ olsnodes -n
d4jtappvprd01 1
d4jtappvprd02 2
[grid@d4jtappvprd02 ~]$ crsctl query crs activeversion
Oracle Clusterware active version on the cluster is [11.2.0.4.0]
[grid@d4jtappvprd02 ~]$ ocrcheck
Status of Oracle Cluster Registry is as follows :
Version : 3
Total space (kbytes) : 262120
Used space (kbytes) : 2752
Available space (kbytes) : 259368
ID : 2096783534
Device/File Name : +CRS
Device/File integrity check succeeded
Device/File not configured
Device/File not configured
Device/File not configured
Device/File not configured
Cluster registry integrity check succeeded
Logical corruption check bypassed due to non-privileged user
[grid@d4jtappvprd01 ~]$ crsctl query css votedisk
STATE File Universal Id File Name Disk group
- ONLINE 6a239ece3d984fc8bfadbd38e84fbe08 (/dev/asm-crsdisk) [CRS]
Located 1 voting disk(s).
[grid@d4jtappvprd01 ~]$ srvctl config asm -a
ASM home: /oracle/app/11.2.0/grid
ASM listener: LISTENER
ASM is enabled.
[grid@d4jtappvprd02 ~]$ srvctl status asm
ASM is running on d4jtappvprd01,d4jtappvprd02
检查ok。
2.Oracle Software 安装
[oracle@d4jtappvprd01 database]$ xhost +
access control disabled, clients can connect from any host
[oracle@d4jtappvprd01 database]$ ls
install readme.html response rpm runInstaller sshsetup stage welcome.html
[oracle@d4jtappvprd01 database]$ ./runInstaller
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB. Actual 26860 MB Passed
Checking swap space: must be greater than 150 MB. Actual 16442 MB Passed
Checking monitor: must be configured to display at least 256 colors. Actual 16777216 Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2014-09-24_03-07-17PM. Please wait ...[oracle@d4jtappvprd01 database]$
跳过软件更新:




安装选项,选择仅安装软件:

测试等效性:

语言选择:

选择企业版安装:

安装目录选择:

确定提示即可
:
权限组选择:

安装环境检测:

忽略即可:

确定即可:

执行安装:


安装进度:

结束后的脚本运行:
节点二、
[root@d4jtappvprd02 11.2.0]# sh /oracle/app/oraInventory/orainstRoot.sh
Changing permissions of /oracle/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /oracle/app/oraInventory to oinstall.
The execution of the script is complete.
节点一、
[root@d4jtappvprd01 bin]# sh /oracle/app/11.2.0/db_1/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /oracle/app/11.2.0/db_1
Enter the full pathname of the local bin directory: [/usr/local/bin]: /usr/local/bin/oracle/bin
Copying dbhome to /usr/local/bin/oracle/bin ...
Copying oraenv to /usr/local/bin/oracle/bin ...
Copying coraenv to /usr/local/bin/oracle/bin ...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
节点二、
[root@d4jtappvprd02 11.2.0]# sh /oracle/app/11.2.0/db_1/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /oracle/app/11.2.0/db_1
Enter the full pathname of the local bin directory: [/usr/local/bin]: /usr/local/bin/oracle/bin
Copying dbhome to /usr/local/bin/oracle/bin ...
Copying oraenv to /usr/local/bin/oracle/bin ...
Copying coraenv to /usr/local/bin/oracle/bin ...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
确定即可

四、数据库实例创建
首先创建asm磁盘组,在grid下执行asmca命令:
这里可以看到CRS盘,但看不到其他盘,点击create按钮:

命名存放数据盘为DATA,对应磁盘设备/dev/asm-datadisk,选择外部镜像:

点ok按钮,直到创建完成:

现在可以看到新建的数据盘了:

通过oracle用户执行命令dbca创建实例:

模板选择:

数据库名以及节点选择:

EM配置以及统计信息收集情况:

关闭自动收集统计信息:

账号密码设定:

数据文件存储位置选择:

闪回区位置指定,此处暂时不开启日志归档:



下一步默认即可:

内存默认为总内存的75%即可,并使用AMM:

块大小选择默认8K,进程数改为1500:

字符集根据原库情况选择ZHS16GBK,国家字符集:AL16UTF16:

连接模式为非共享:

文件位置大小设置(也可以装完后再配置,可选):
设置临时表空间数据文件大小为20g:

关闭自动扩展:

设置实例1 undo表空间数据文件大小为20g:


关闭自动扩展:

设置实例2 undo表空间数据文件大小为20g:

关闭自动扩展:

设置redo日志文件大小256M:

开始创建:

确定即可:

创建进度:

安装完成,会看到下面界面:

浙公网安备 33010602011771号