Oracle 12c RAC引入了Flex Cluster的概念,但我尚未研究成功。
下面是传统方式安装Oracle 12c RAC的教程。
环境介绍
OS: Oracle Enterprise Linux 6.4 (For RAC Nodes),Oracle Enterprise Linux 5.8(For DNS Server),Openfiler 2.3(For SAN Storage)
DB: GI and Database 12.1.0.1
所需介质
linuxamd64_12c_database_1of2.zip
linuxamd64_12c_database_2of2.zip
linuxamd64_12c_grid_1of2.zip
linuxamd64_12c_grid_2of2.zip
– 这里只给出Oracle相关的,操作系统以及其他软件请自身准备。
操作系统信息
RAC节点服务器:
(以node1节点为例)[root@12crac1 ~]# cat /etc/-release RedHatEnterpriseLinuxServer release 6.4(Santiago)[root@12crac1 ~]# uname -aLinux12crac1.luocs.com 2.6.39-400.17.1.el6uek.x86_64 #1 SMP Fri Feb 22 18:16:18 PST 2013 x86_64 x86_64 x86_64 GNU/Linux[root@12crac1 ~]# grep MemTotal /proc/meminfoMemTotal:2051748 kB [root@12crac1 ~]# grep SwapTotal /proc/meminfoSwapTotal:5119996 kB [root@12crac1 ~]# df -hFilesystemSizeUsedAvailUse%Mounted on /dev/sda3 45G16G27G38%/ tmpfs 2.0G 652M 1.4G 32% /dev/shm /dev/sda1 194M50M135M27%/boot
网络配置信息:
备注:从下面信息中可以发现,每个节点服务器我都添加了五个网卡,eth0用于PUBLIC,而eth1~eth4用于Private,本想采用HAIP特性。
但我在安装实验过程中HAIP特性上发生了节点2无法启动ASM实例的问题,因此最后只用了其中eth1接口。
至于HAIP导致的问题,可能是出于BUG,这个问题还有待仔细troubleshooting。
(节点1)[root@12crac1 ~]# ifconfig eth0 Link encap:EthernetHWaddr00:0C:29:75:36:ED inet addr:192.168.1.150Bcast:192.168.1.255Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe75:36ed/64Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:64 errors:0 dropped:0 overruns:0 frame:0 TX packets:56 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:7014(6.8KiB) TX bytes:6193(6.0KiB) eth1 Link encap:EthernetHWaddr00:0C:29:75:36:F7 inet addr:192.168.80.150Bcast:192.168.80.255Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe75:36f7/64Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:12 errors:0 dropped:0 overruns:0 frame:0 TX packets:12 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:720(720.0 b) TX bytes:720(720.0 b) eth2 Link encap:EthernetHWaddr00:0C:29:75:36:01 inet addr:192.168.80.151Bcast:192.168.80.255Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe75:3601/64Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:9 errors:0 dropped:0 overruns:0 frame:0 TX packets:10 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:540(540.0 b) TX bytes:636(636.0 b) eth3 Link encap:EthernetHWaddr00:0C:29:75:36:0B inet addr:192.168.80.152Bcast:192.168.80.255Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe75:360b/64Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:5 errors:0 dropped:0 overruns:0 frame:0 TX packets:10 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:300(300.0 b) TX bytes:636(636.0 b) eth4 Link encap:EthernetHWaddr00:0C:29:75:36:15 inet addr:192.168.80.153Bcast:192.168.80.255Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe75:3615/64Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:1 errors:0 dropped:0 overruns:0 frame:0 TX packets:9 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:60(60.0 b) TX bytes:566(566.0 b) lo Link encap:LocalLoopback inet addr:127.0.0.1Mask:255.0.0.0 inet6 addr:::1/128Scope:Host UP LOOPBACK RUNNING MTU:16436Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0(0.0 b) TX bytes:0(0.0 b)(节点2)[root@12crac2 ~]# ifconfig eth0 Link encap:EthernetHWaddr00:0C:29:A1:81:7C inet addr:192.168.1.151Bcast:192.168.1.255Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fea1:817c/64Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:126 errors:0 dropped:0 overruns:0 frame:0 TX packets:62 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:10466(10.2KiB) TX bytes:6193(6.0KiB) eth1 Link encap:EthernetHWaddr00:0C:29:A1:81:86 inet addr:192.168.80.154Bcast:192.168.80.255Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fea1:8186/64Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:23 errors:0 dropped:0 overruns:0 frame:0 TX packets:27 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:2081(2.0KiB) TX bytes:1622(1.5KiB) eth2 Link encap:EthernetHWaddr00:0C:29:A1:81:90 inet addr:192.168.80.155Bcast:192.168.80.255Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fea1:8190/64Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:1 errors:0 dropped:0 overruns:0 frame:0 TX packets:10 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:60(60.0 b) TX bytes:636(636.0 b) eth3 Link encap:EthernetHWaddr00:0C:29:A1:81:9A inet addr:192.168.80.156Bcast:192.168.80.255Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0(0.0 b) TX bytes:0(0.0 b) eth4 Link encap:EthernetHWaddr00:0C:29:A1:81:A4 inet addr:192.168.80.157Bcast:192.168.80.255Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0(0.0 b) TX bytes:0(0.0 b) lo Link encap:LocalLoopback inet addr:127.0.0.1Mask:255.0.0.0 inet6 addr:::1/128Scope:Host UP LOOPBACK RUNNING MTU:16436Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0(0.0 b) TX bytes:0(0.0 b)
确认防火墙和SELinux是禁用的
(以Node1为例,两个节点相同)[root@12crac1 ~]# iptables -LChain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination 如果防火墙没禁用,那么通过如下方式修改:[root@12crac1 ~]# service iptables stop[root@12crac1 ~]# chkconfig iptables off[root@12crac1 ~]# getenforce Disabled如果SELinux没有被禁止,那就通过如下方式修改:[root@12crac1 ~]# cat /etc/selinux/config --改成SELINUX=disabled # This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:# enforcing - SELinux security policy is enforced.# permissive - SELinux prints warnings instead of enforcing.# disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of these two values:# targeted - Targeted processes are protected,# mls - Multi Level Security protection. SELINUXTYPE=targeted
DNS服务器:
[root@dns12c ~]# cat /etc/redhat-release RedHatEnterpriseLinuxServer release 5.8(Tikanga)[root@dns12c ~]# uname -aLinux dns12c.luocs.com 2.6.32-300.10.1.el5uek#1 SMP Wed Feb 22 17:37:40 EST 2012 x86_64 x86_64 x86_64 GNU/Linux[root@dns12c ~]# grep MemTotal /proc/meminfoMemTotal:494596 kB [root@dns12c ~]# grep SwapTotal /proc/meminfoSwapTotal:3277252 kB [root@dns12c ~]# ifconfig eth0 Link encap:EthernetHWaddr00:0C:29:7A:FD:82 inet addr:192.168.1.158Bcast:192.168.1.255Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:114941 errors:0 dropped:0 overruns:0 frame:0 TX packets:6985 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:11015974(10.5MiB) TX bytes:1151788(1.0MiB) lo Link encap:LocalLoopback inet addr:127.0.0.1Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436Metric:1 RX packets:104 errors:0 dropped:0 overruns:0 frame:0 TX packets:104 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:9531(9.3KiB) TX bytes:9531(9.3KiB)Iptables和SELinux也禁止。
SAN服务器:
Openfiler 2.3来部署的,在这里分配3个LUN,大小分别为5G和两个8G。
正式部署安装
1、配置DNS服务
以下操作在DNS服务器上进行:
安装bind三个包[root@dns12c ~]# rpm -ivh /mnt/Server/bind-9.3.6-20.P1.el5.x86_64.rpm [root@dns12c ~]# rpm -ivh /mnt/Server/bind-chroot-9.3.6-20.P1.el5.x86_64.rpm [root@dns12c ~]# rpm -ivh /mnt/Server/caching-nameserver-9.3.6-20.P1.el5.x86_64.rpm 配置主区域[root@dns12c ~]# cd /var/named/chroot/etc[root@dns12c etc]# cp -p named.caching-nameserver.conf named.conf[root@dns12c etc]# cat named.conf options { listen-on port 53{ any;}; listen-on-v6 port 53{::1;}; directory "/var/named";dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt";// Those options should be used carefully because they disable port// randomization// query-source port 53;// query-source-v6 port 53; allow-query { any;}; allow-query-cache { any;};}; logging { channel default_debug { file "data/named.run"; severity dynamic;};}; view any_resolver { match-clients { any;}; match-destinations { any;}; recursion yes; include "/etc/named.zones";}; [root@dns12c etc]# cp -p named.rfc1912.zones named.zones[root@dns12c etc]# cat named.zones zone "luocs.com" IN { type master; file "luocs.com.zone"; allow-update { none;};}; zone "1.168.192.in-addr.arpa" IN { type master; file "1.168.192.local"; allow-update { none;};};[root@dns12c ~]# cd /var/named/chroot/var/named[root@12crac1 named]# cp -p named.zero luocs.com.zone[root@12crac1 named]# cp -p named.local 1.168.192.local[root@12crac1 named]# cat luocs.com.zone $TTL 86400@ IN SOA dns.luocs.com. root.luocs.com.(42; serial (d. adams)3H; refresh 15M;retry1W; expiry 1D); minimum IN NS dns.luocs.com. scan IN A 192.168.1.154 scan IN A 192.168.1.155 scan IN A 192.168.1.156 gns IN A 192.168.1.15712crac1 IN A 192.168.1.15012crac2 IN A 192.168.1.151[root@12crac1 named]# cat 1.168.192.local $TTL 86400@ IN SOA dns.luocs.com. root.luocs.com.(1997022700;Serial28800;Refresh14400;Retry3600000;Expire86400);Minimum IN NS dns.luocs.com.154 IN PTR scan.luocs.com.155 IN PTR scan.luocs.com.156 IN PTR scan.luocs.com.157 IN PTR gns.luocs.com.
nslookup或 dig检查
给两个节点配置DNS
(以Node1为例,两个节点相同)[root@12crac1 ~]# cat /etc/resolv.conf #domain localdomain search localdomain nameserver 192.168.1.158
测试:
[root@12crac1 ~]# nslookup scan.luocs.comServer:192.168.1.158Address:192.168.1.158#53Name: scan.luocs.com Address:192.168.1.156Name: scan.luocs.com Address:192.168.1.154Name: scan.luocs.com Address:192.168.1.155[root@12crac1 ~]# nslookup 192.168.1.154Server:192.168.1.158Address:192.168.1.158#53154.1.168.192.in-addr.arpa name = scan.luocs.com.[root@12crac1 ~]# nslookup 192.168.1.155Server:192.168.1.158Address:192.168.1.158#53155.1.168.192.in-addr.arpa name = scan.luocs.com.[root@12crac1 ~]# nslookup 192.168.1.156Server:192.168.1.158Address:192.168.1.158#53156.1.168.192.in-addr.arpa name = scan.luocs.com.
2、配置/etc/hosts
修改/etc/hosts文件,前两行不懂,添加hostname对应信息。
(以Node1为例,两个节点相同)[root@12crac1 ~]# cat /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 # For Public192.168.1.15012crac1.luocs.com 12crac1192.168.1.15112crac2.luocs.com 12crac2# For VIP192.168.1.15212crac1-vip.luocs.com 12crac1-vip.luocs.com 192.168.1.15312crac2-vip.luocs.com 12crac2-vip.luocs.com # For Private IP192.168.80.15012crac1-priv1.luocs.com 12crac1-priv1 192.168.80.15112crac1-priv2.luocs.com 12crac1-priv2 192.168.80.15212crac1-priv3.luocs.com 12crac1-priv3 192.168.80.15312crac1-priv4.luocs.com 12crac1-priv4 192.168.80.15412crac2-priv1.luocs.com 12crac2-priv1 192.168.80.15512crac2-priv2.luocs.com 12crac2-priv2 192.168.80.15612crac2-priv3.luocs.com 12crac2-priv3 192.168.80.15712crac2-priv4.luocs.com 12crac2-priv4 # For SCAN IP# 192.168.1.154 scan.luocs.com# 192.168.1.155 scan.luocs.com# 192.168.1.155 scan.luocs.com# For DNS Server192.168.1.158 dns12c.luocs.com dns12c
3、系统配置
修改/etc/sysctl.conf,添加如下内容:
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
生效:
[root@12c ~]# sysctl -p
修改/etc/security/limits.conf,添加如下内容:
grid soft nofile 1024
grid hard nofile 65536
grid soft nproc 2047
grid hard nproc 16384
grid soft stack 10240
grid hard stack 32768
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
4、配置YUM源并安装所需包
先将默认的yum配置文件删除或者移动,然后创建一个新的
(以Node1为例,两个节点相同)[root@12crac1 ~]# cd /etc/yum.repos.d[root@12crac1 yum.repos.d]# mkdir bk[root@12crac1 yum.repos.d]# mv public-yum-ol6.repo bk/[root@12crac1 yum.repos.d]# vi luocs.repo --添加如下内容[Oracle] name=OEL-$releasever -Media baseurl=file:///mnt gpgcheck=0 enabled=1
将光驱挂载上
[root@12crac1 yum.repos.d]# mount /dev/cdrom /mnt mount: block device /dev/sr0 is write-protected, mounting read-only
下面就可以Yum方式安装所需包了
[root@12crac1 yum.repos.d]# yum -y install binutils compat-libstdc++-33 elfutils-libelf \ elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common \ glibc-devel kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel \ make numactl-devel sysstat unixODBC unixODBC-devel pdksh compat-libcap1
5、创建用户和组
(以Node1为例,两个节点相同)创建组:[root@12crac1 ~]# /usr/sbin/groupadd -g 54321 oinstall[root@12crac1 ~]# /usr/sbin/groupadd -g 54322 dba[root@12crac1 ~]# /usr/sbin/groupadd -g 54323 oper[root@12crac1 ~]# /usr/sbin/groupadd -g 54324 backupdba[root@12crac1 ~]# /usr/sbin/groupadd -g 54325 dgdba[root@12crac1 ~]# /usr/sbin/groupadd -g 54327 asmdba[root@12crac1 ~]# /usr/sbin/groupadd -g 54328 asmoper[root@12crac1 ~]# /usr/sbin/groupadd -g 54329 asmadmin创建用户:[root@12crac1 ~]# /usr/sbin/useradd -u 54321 -g oinstall -G asmadmin,asmdba,asmoper,dba grid[root@12crac1 ~]# /usr/sbin/useradd -u 54322 -g oinstall -G dba,backupdba,dgdba,asmadmin oracle设置口令:[root@12crac1 ~]# passwd grid[root@12crac1 ~]# passwd oracle
6、创建安装目录以及授权
(以Node1为例,两个节点相同)[root@12crac1 ~]# mkdir -p /u01/app/grid[root@12crac1 ~]# mkdir -p /u01/app/12.1.0/grid[root@12crac1 ~]# mkdir -p /u01/app/oracle/product/12.1.0/db_1[root@12crac1 ~]# chown -R grid.oinstall /u01[root@12crac1 ~]# chown -R oracle.oinstall /u01/app/oracle[root@12crac1 ~]# chmod -R 775 /u01
7、配置境变量
节点1:[root@12crac1 ~]# vi /home/grid/.bash_profile export TMP=/tmp export TMPDIR=$TMP export ORACLE_HOSTNAME=12crac1.luocs.com export ORACLE_BASE=/u01/app/grid export ORACLE_HOME=/u01/app/12.1.0/grid export ORACLE_SID=+ASM1 export PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib alias sqlplus="rlwrap sqlplus"[root@12crac1 ~]# vi /home/oracle/.bash_profile export PATH export TMP=/tmp export TMPDIR=$TMP export ORACLE_HOSTNAME=12crac1.luocs.com export ORACLE_UNQNAME=luocs12c1 export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1 export ORACLE_SID=luocs12c1 export PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib alias sqlplus="rlwrap sqlplus"alias rman="rlwrap rman"节点2:[root@12crac2 ~]# vi /home/grid/.bash_profileexport TMP=/tmp export TMPDIR=$TMP export ORACLE_HOSTNAME=12crac1.luocs.com export ORACLE_BASE=/u01/app/grid export ORACLE_HOME=/u01/app/12.1.0/grid export ORACLE_SID=+ASM1 export PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib alias sqlplus="rlwrap sqlplus"[root@12crac2 ~]# vi /home/oracle/.bash_profileexport TMP=/tmp export TMPDIR=$TMP export ORACLE_HOSTNAME=12crac2.luocs.com export ORACLE_UNQNAME=luocs12c2 export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1 export ORACLE_SID=luocs12c2 export PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib alias sqlplus="rlwrap sqlplus"alias rman="rlwrap rman"
8、Iscsi挂载磁盘并配置UDEV
[root@12cr ~]# yum -y install iscsi-initiator-utils[root@12cr ~]# service iscsid start[root@12cr ~]# chkconfig iscsid on[root@12cr ~]# iscsiadm -m discovery -t sendtargets -p 192.168.80.140:3260[ OK ] iscsid:[ OK ]192.168.80.140:3260,1 iqn.2006-01.com.openfiler:tsn.3a9cad78121d[root@12cr ~]# service iscsi restartStopping iscsi:[ OK ]Starting iscsi:[ OK ][root@12crac1 ~]# fdisk -lDisk/dev/sda:53.7 GB,53687091200 bytes 255 heads,63 sectors/track,6527 cylinders Units= cylinders of 16065*512=8225280 bytes Sector size (logical/physical):512 bytes /512 bytes I/O size (minimum/optimal):512 bytes /512 bytes Disk identifier:0x00046ecdDeviceBootStartEndBlocksIdSystem/dev/sda1 *12620480083LinuxPartition1 does notend on cylinder boundary./dev/sda2 26664512000082Linux swap /SolarisPartition2 does notend on cylinder boundary./dev/sda3 66465284710297683LinuxDisk/dev/sdb:2147 MB,2147483648 bytes 67 heads,62 sectors/track,1009 cylinders Units= cylinders of 4154*512=2126848 bytes Sector size (logical/physical):512 bytes /512 bytes I/O size (minimum/optimal):512 bytes /512 bytes Disk identifier:0x00000000Disk/dev/sdc:10.5 GB,10502537216 bytes 64 heads,32 sectors/track,10016 cylinders Units= cylinders of 2048*512=1048576 bytes Sector size (logical/physical):512 bytes /512 bytes I/O size (minimum/optimal):512 bytes /512 bytes Disk identifier:0x00000000Disk/dev/sdd:6610 MB,6610223104 bytes 204 heads,62 sectors/track,1020 cylinders Units= cylinders of 12648*512=6475776 bytes Sector size (logical/physical):512 bytes /512 bytes I/O size (minimum/optimal):512 bytes /512 bytes Disk identifier:0x00000000Disk/dev/sdf:8388 MB,8388608000 bytes 64 heads,32 sectors/track,8000 cylinders Units= cylinders of 2048*512=1048576 bytes Sector size (logical/physical):512 bytes /512 bytes I/O size (minimum/optimal):512 bytes /512 bytes Disk identifier:0x00000000Disk/dev/sde:8388 MB,8388608000 bytes 64 heads,32 sectors/track,8000 cylinders Units= cylinders of 2048*512=1048576 bytes Sector size (logical/physical):512 bytes /512 bytes I/O size (minimum/optimal):512 bytes /512 bytes Disk identifier:0x00000000Disk/dev/sdg:5335 MB,5335154688 bytes 165 heads,62 sectors/track,1018 cylinders Units= cylinders of 10230*512=5237760 bytes Sector size (logical/physical):512 bytes /512 bytes I/O size (minimum/optimal):512 bytes /512 bytes Disk identifier:0x00000000
这里我只用sde、sdf、sdg,其他的是给别的集群使用的。
[root@12crac1 ~]# for i in e f g;do> echo "KERNEL==\"sd*\", BUS==\"scsi\", PROGRAM==\"/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/\$name\", RESULT==\"`/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$i`\", NAME=\"asm-disk$i\", OWNER=\"grid\", GROUP=\"asmadmin\", MODE=\"0660\"">done KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="14f504e46494c450058444273784d2d64705a6a2d544c4756", NAME="asm-diske", OWNER="grid", GROUP="asmadmin", MODE="0660" KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="14f504e46494c45003030365263642d32714a702d6866744c", NAME="asm-diskf", OWNER="grid", GROUP="asmadmin", MODE="0660" KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="14f504e46494c45006c58576a76452d716d50492d71436c76", NAME="asm-diskg", OWNER="grid", GROUP="asmadmin", MODE="0660"配置UDEV:(以Node1为例,两个节点相同)[root@12crac1 ~]# vi /etc/udev/rules.d/99-oracle-asmdevices.rules--添加如下内容: KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="14f504e46494c45003030365263642d32714a702d6866744c", NAME="asm-data", OWNER="grid", GROUP="asmadmin", MODE="0660" KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="14f504e46494c4500796861656a6b2d3632475a2d66384631", NAME="asm-fra", OWNER="grid", GROUP="asmadmin", MODE="0660" KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="14f504e46494c45006c58576a76452d716d50492d71436c76", NAME="asm-crs", OWNER="grid", GROUP="asmadmin", MODE="0660"[root@12crac1 ~]# /sbin/start_udevStarting udev:[ OK ][root@12crac1 ~]# ls -l /dev/asm* brw-rw----1 grid asmadmin 8,96Jun2921:56/dev/asm-crs brw-rw----1 grid asmadmin 8,64Jun2921:56/dev/asm-data brw-rw----1 grid asmadmin 8,80Jun2921:56/dev/asm-fra
9、禁用NTP服务
(以Node1为例,两个节点相同)[root@12crac1 ~]# chkconfig ntpd off[root@12crac1 ~]# mv /etc/ntp.conf /etc/ntp.conf.bak
10、解压介质
节点1:[root@12crac1 ~]# chown -R grid.oinstall /install/[root@12crac1 ~]# chown oracle.oinstall /install/linuxamd64_12c_database_*[root@12crac1 ~]# chmod 775 /install[root@12crac1 ~]# su - grid[root@12crac1 ~]# cd /install/[grid@12crac1 install]$ unzip linuxamd64_12c_grid_1of2.zip [grid@12crac1 install]$ unzip linuxamd64_12c_grid_2of2.zip [root@12crac1 ~]# su - oracle[oracle@12crac1 install]$ unzip linuxamd64_12c_database_1of2.zip 解压之后大小为:[oracle@12crac1 install]$ du -sh grid 2.1G grid [oracle@12crac1 install]$ du -sh database/2.6G database/安装cvu相关rpm包:[root@12crac1 ~]# cd /install/grid/rpm/[root@12crac1 rpm]# rpm -ivh cvuqdisk-1.0.9-1.rpm Preparing...########################################### [100%]Usingdefaultgroup oinstall to install package1:cvuqdisk ########################################### [100%]拷贝到节点2并安装:[root@12crac1 rpm]# scp cvuqdisk-1.0.9-1.rpm 12crac2:/install[root@12crac2 install]# rpm -ivh cvuqdisk-1.0.9-1.rpm Preparing...########################################### [100%]Usingdefaultgroup oinstall to install package1:cvuqdisk ########################################### [100%]
11、校验
这里只贴失败的项,其中第一个是物理内存不足问题,Oracle推荐每节点至少4GB内存空间,我这里只有2G;第二个问题是配置DNS,这个问题我们可以忽略。
节点1:[grid@12crac1 grid]$ ./runcluvfy.sh stage -pre crsinst -n 12crac1,12crac2-verbose Check:Total memory NodeNameAvailableRequiredStatus----------------------------------------------------------------------12crac21.9567GB(2051748.0KB)4GB(4194304.0KB) failed 12crac11.9567GB(2051748.0KB)4GB(4194304.0KB) failed Result:Total memory check failed Result:Default user file creation mask check passed Checking integrity of file "/etc/resolv.conf" across nodes Checking the file "/etc/resolv.conf" to make sure only one of domain and search entries isdefined"domain"and"search" entries donot coexist in any "/etc/resolv.conf" file Checkingif domain entry in file "/etc/resolv.conf"is consistent across the nodes..."domain" entry does not exist in any "/etc/resolv.conf" file Checkingif search entry in file "/etc/resolv.conf"is consistent across the nodes...Checking file "/etc/resolv.conf" to make sure that only one search entry isdefinedMore than one "search" entry does not exist in any "/etc/resolv.conf" file All nodes have same "search" order definedin file "/etc/resolv.conf"Checking DNS response time for an unreachable node NodeNameStatus------------------------------------------------------------12crac1 failed 12crac2 failed PRVF-5636:The DNS response time for an unreachable node exceeded "15000" ms on following nodes:12crac1,12crac2Checkfor integrity of file "/etc/resolv.conf" failed
12、安装
1)安装GI
[root@12cr ~]# su - grid[grid@12cr ~]$ cd /install/grid/我打开Xmanager-Passive,设置DISPLAY,调用runInstaller启动OUI [grid@12cr grid]$ export DISPLAY=192.168.1.1:0.0[grid@12cr grid]$ ./runInstaller
这里有几项校验不过去,这几个都忽略。