1.安装linux操作系统:
安装结束后安装一下包:
rpm -Uvh binutils-2.*
rpm -Uvh elfutils-libelf-0.*
rpm -Uvh glibc-2.*
rpm -Uvh glibc-common-2.*
rpm -Uvh libaio-0.*
rpm -Uvh libgcc-4.*
rpm -Uvh libstdc++-4.*
rpm -Uvh make-3.*
rpm -Uvhkernel-headers-2.6.18-274.el5.x86_64.rpm
rpm -Uvh glibc-headers-2.*
rpm -Uvh glibc-devel-2.*
rpm -Uvhelfutils-libelf-0.137-3.el5.i386.rpm
rpm -Uvh elfutils-libelf-devel*
rpm -Uvhelfutils-libelf-devel-0.*
rpm -Uvh gcc-4.*
rpm -Uvhlibstdc++-devel-4.*
rpm -Uvh gcc-c++-4.*
rpm -Uvh unixODBC-2.*
rpm -Uvh compat-libstdc++-296*
rpm -Uvh compat-libstdc++-33*
rpm -Uvh libaio-devel-0.*
rpm -Uvh libXp-1.*
rpm -Uvh unixODBC-devel-2.*
rpm -Uvh sysstat-7.*
2.给linux系统配置ntp,ftp
3.配置linux网络:
1)在两个节点上编辑/etc/hosts文件:
127.0.0.1 localhost.localdomain localhost
#used by ntp serviceto synchronize time
66.187.233.4 clock.redhat.com
#local network forRAC
192.168.0.131 ora10racn1 ora10racn1.ccz.com
192.168.0.132 ora10racn2 ora10racn2.ccz.com
192.168.0.151 ora10racn1-vip
192.168.0.152 ora10racn2-vip
192.168.2.131 ora10racn1-str
192.168.2.132 ora10racn2-str
10.10.0.131 ora10racn1-priv
10.10.0.132 ora10racn2-priv
192.168.0.110 openfiler
192.168.2.110 openfiler-str
2)确保节点的主机名称不在loopback中出现:
127.0.0.1 localhost.localdomain localhost
3)修改/etc/sysctl.conf中的网络设置:
#+---------------------------------------------------------+
# | Default settingin bytes of the socket "receive" buffer |
# | which may be setby using the SO_RCVBUF socket option. |
net.core.rmem_default=1048576
# | Maximum settingin bytes of the socket "receive" buffer |
net.core.rmem_max=1048576
# | Default settingin bytes of the socket "send" buffer |
# | which may be setby using the SO_SNDBUF socket option. |
net.core.wmem_default=262144
# | Maximum settingin bytes of the socket "send" buffer |
net.core.wmem_max=262144
4)关闭所有节点上的UDP ICMP的rejection
[root@ora10racn1Server]# /etc/rc.d/init.d/iptables status
Firewall is stopped.
如果是running状态需要用以下命令关闭:
[root@ora10racn1Server]# /etc/rc.d/init.d/iptables stop
在各个运行级别上关闭iptables
[root@ora10racn1Server]# chkconfig --list|grep iptables
iptables 0:off1:off 2:on 3:on4:on 5:on 6:off
[root@ora10racn1Server]# chkconfig iptables off
iptables 0:off1:off 2:off 3:off4:off 5:off 6:off
4.创建oracle用户并确认nobody帐号的存在:
# groupadd -g 501 oinstall
# groupadd -g 502 dba
# groupadd -g 503 oper
# useradd -m -u 501 -g oinstall-G dba,oper -d /home/oracle -s /bin/bash oracle
# id oracle
uid=501(oracle) gid=501(oinstall)groups=501(oinstall),502(dba),503(oper)
# passwd oracle
Changing password for useroracle.
New UNIX password: xxxxxxxxxxx
Retype new UNIX password:xxxxxxxxxxx
passwd: all authentication tokensupdated successfully.
修改oracle帐号的.bash_profile
export JAVA_HOME=/usr/local/java
# User specific environment andstartup programs
exportORACLE_BASE=/u01/app/oracle
exportORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORA_CRS_HOME=/u01/app/crs
exportORACLE_PATH=$ORACLE_BASE/dba_scripts/common/sql:.:$ORACLE_HOME/rdbms/admin
export CV_JDKHOME=/usr/local/java
# Each RAC node must have aunique ORACLE_SID. (i.e. racdb1,racdb2,...)
exportORACLE_SID=racdb1
exportPATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin
exportPATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
export PATH=${PATH}:$ORACLE_BASE/dba_scripts/common/bin
export ORACLE_TERM=xterm
exportTNS_ADMIN=$ORACLE_HOME/network/admin
exportORA_NLS10=$ORACLE_HOME/nls/data
exportNLS_DATE_FORMAT="DD-MON-YYYY HH24:MI:SS"
exportLD_LIBRARY_PATH=$ORACLE_HOME/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
exportLD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=$ORACLE_HOME/JRE
exportCLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
exportCLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
exportCLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export THREADS_FLAG=native
export TEMP=/tmp
检测nobody帐号:
export TMPDIR=/tmp
# id nobody
uid=99(nobody) gid=99(nobody)groups=99(nobody)
如果nobody不存在,需要增加:
# /usr/sbin/useradd nobody
5.安装openfiler并创建相关卷:
6.在各个节点上创建相关的目录:
# chown -Roracle:oinstall /u01/app/oracle
# chmod -R 775/u01/app/oracle
# mkdir -p/u01/app/crs
# chown -Roracle:oinstall /u01/app/crs
# chmod -R 775/u01/app/crs
# mkdir -p /u02
# chown -Roracle:oinstall /u02
# chmod -R 775 /u02
7.在各个节点上识别iscsi卷
1)在各个节点安装iscsi的initator:
[root@ora10racn1Server]# rpm -Uvh iscsi-initiator-utils-6.2.0.872-10.0.1.el5.x86_64.rpm
warning:iscsi-initiator-utils-6.2.0.872-10.0.1.el5.x86_64.rpm: Header V3 DSA signature:NOKEY,key ID 1e5e0159
Preparing...########################################### [100%]
packageiscsi-initiator-utils-6.2.0.872-10.0.1.el5.x86_64 is already installed
2)在各个节点上启动iscsi的进程:
[root@ora10racn1Server]# service iscsid start
Starting iSCSI daemon:
[ OK ]
3)在各个节点上搜索openfiler上的相关卷:
[root@ora10racn1Server]# iscsiadm -m discovery -tsendtargets -p 192.168.2.110
192.168.2.110:3260,1iqn.2006-01.com.openfiler:racdb.asm2
192.168.0.110:3260,1iqn.2006-01.com.openfiler:racdb.asm1
自动连接
[root@ora10racn1 Server]# iscsiadm -m node -Tiqn.2006-01.com.openfiler:racdb.crs1 -p 192.168.2.110 -l
Logging in to [iface: default,target:iqn.2006-01.com.openfiler:racdb.crs1,portal: 192.168.2.110,3260]
Login to [iface: default,target: iqn.2006-01.com.openfiler:racdb.crs1,3260] successful.
[root@ora10racn1 Server]# iscsiadm -m node -Tiqn.2006-01.com.openfiler:racdb.asm1 -p 192.168.2.110 -l
[root@ora10racn1 Server]# iscsiadm -m node -Tiqn.2006-01.com.openfiler:racdb.asm2 -p 192.168.2.110 -l
[root@ora10racn1 Server]# iscsiadm -m node -Tiqn.2006-01.com.openfiler:racdb.crs1 -p 192.168.2.110 --op update -nnode.startup -v automatic
[root@ora10racn1 Server]# iscsiadm -m node -Tiqn.2006-01.com.openfiler:racdb.asm1 -p 192.168.2.110 --op update -nnode.startup -v automatic
[root@ora10racn1 Server]# iscsiadm -m node -Tiqn.2006-01.com.openfiler:racdb.asm2 -p 192.168.2.110 --op update -nnode.startup -v automatic
5)在各个节点上建立永久性连接规则,以保证自动连接时设备号不受连接顺序影响:
(cd /dev/disk/by-path; ls -l *openfiler* | awk '{FS=" "; print$9 " " $10 " " $11}')
ip-192.168.2.110:3260-iscsi-iqn.2006-01.com.openfiler:racdb.asm1-lun-0-> ../../sdc
ip-192.168.2.110:3260-iscsi-iqn.2006-01.com.openfiler:racdb.asm2-lun-0-> ../../sdd
ip-192.168.2.110:3260-iscsi-iqn.2006-01.com.openfiler:racdb.crs1-lun-0-> ../../sdb
创建连接规则:
[root@ora10racn1 rules.d]# vi /etc/udev/rules.d/55-openiscsi.rules
KERNEL=="sd*",BUS=="scsi",PROGRAM="/etc/udev/scripts/iscsidev.sh%b",SYMLINK+="iscsi/%c/part%n"
创建连接规则使用的脚本:
[root@ora10racn2 Server]# mkdir -p /etc/udev/scripts
[root@ora10racn2 scripts]# vi /etc/udev/scripts/iscsidev.sh
#!/bin/sh
# FILE: /etc/udev/scripts/iscsidev.sh
BUS=${1}
HOST=${BUS%%:*}
[ -e /sys/class/iscsi_host ] || exit 1
file="/sys/class/iscsi_host/host${HOST}/device/session*/iscsi_session*/targetname"
target_name=$(cat ${file})
# This is not an open-scsi drive
if [ -z "${target_name}" ]; then
exit 1
fi
# Check if QNAP drive
check_qnap_target_name=${target_name%%:*}
if [ $check_qnap_target_name = "iqn.2004-04.com.qnap" ]; then
target_name=`echo"${target_name%.*}"`
echo "${target_name##*.}"
~
"iscsidev.sh" [New] 25L,507C written
[root@ora10racn2 scripts]#chmod 755 /etc/udev/scripts/iscsidev.sh
重新启动iscsi服务:
[root@ora10racn2 scripts]# service iscsi stop
Logging out of session [sid: 1,191);">Logging out of session [sid: 2,191);">Logging out of session [sid: 3,target:iqn.2006-01.com.openfiler:racdb.asm2,191);">logout of [sid: 1,portal:192.168.2.110,191);">logout of [sid: 2,191);">logout of [sid: 3,191);">Stopping iSCSI daemon:
[root@ora10racn2 scripts]# service iscsi start
iscsid is stopped
[ OK ] iSCSI daemon: [ OK ]
[ OK ]
Setting up iSCSI targets: Logging in to [iface: default,portal: 192.168.0.110,191);">iscsiadm: Could not login to [iface: default,3260].
iscsiadm: initiator reported error (19 - encountered non-retryable iSCSI loginfailure)
iscsiadm: initiator reported error (19 - encountered non-retryable iSCSIlogin failure)
iscsiadm: Could not log into all portals
[root@ora10racn2 scripts]# ls -l /dev/iscsi/*
/dev/iscsi/asm1:
total 0
lrwxrwxrwx 1 root root 9 May 16 15:16 part -> ../../sdc
/dev/iscsi/asm2:
lrwxrwxrwx 1 root root 9 May 16 15:16 part -> ../../sdb
/dev/iscsi/crs1:
lrwxrwxrwx 1 root root 9 May 16 15:16 part -> ../../sdd
6)在一个节点上为iSCSI卷创建分区:(意:只能在一个节点上行)
[root@ora10racn1 rules.d]# fdisk /dev/iscsi/crs1/part
Device contains neither a valid DOS partition table,nor Sun,SGI or OSFdisklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that,of course,the prevIoUs
content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected byw(rite)
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1009,default 1): 1
Last cylinder or +size or +sizeM or +sizeK (1-1009,default 1009): 1009
Command (m for help): p
Disk /dev/iscsi/crs1/part: 2147 MB,2147483648 bytes
67 heads,62 sectors/track,1009 cylinders
Units = cylinders of 4154 * 512 = 2126848 bytes
Device Boot Start End BlocksId System
/dev/iscsi/crs1/part11 1009 209566283 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@ora10racn1 rules.d]#fdisk /dev/iscsi/asm1/part
The number of cylinders for this disk is set to 8192.
There is nothing wrong with that,but this is larger than 1024,191);">and could in certain setups cause problems with:
1) software that runs at boot time (e.g.,old versions of LILO)
2) booting and partitioning software from other OSs
(e.g.,DOS FDISK,OS/2 FDISK)
Command (m for help): n
First cylinder (1-8192,default 1): 1
Last cylinder or +size or +sizeM or +sizeK (1-8192,default 8192): 8192
Disk /dev/iscsi/asm1/part: 8589 MB,8589934592 bytes
64 heads,32 sectors/track,8192 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
/dev/iscsi/asm1/part11 8192 838859283 Linux
WARNING: Re-reading the partition table Failed with error 16: Device orresource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
[root@ora10racn1 rules.d]# fdisk /dev/iscsi/asm2/part
Command (m for help): n
p
Command (m for help): p
Disk /dev/iscsi/asm2/part: 8589 MB,191);">/dev/iscsi/asm2/part11 8192 838859283 Linux
Syncing disks.
7)在各个节点上对分区进行检验:
[root@ora10racn1 rules.d]# partprobe
[root@ora10racn1 rules.d]# fdisk -l
Disk /dev/sda: 53.6 GB,53687091200 bytes
255 heads,63 sectors/track,6527 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
/dev/sda1 * 1 13 10439183 Linux
/dev/sda2 14 652752323705 8e Linux LVM
Disk /dev/dm-0: 49.3 GB,49358569472 bytes
Disk /dev/dm-0 doesn't contain a valid partition table
Disk /dev/dm-1: 4194 MB,4194304000 bytes
Disk /dev/dm-1 doesn't contain a valid partition table
Disk /dev/sdb: 8589 MB,191);">/dev/sdb1 1 81928388592 83 Linux
Disk /dev/sdc: 8589 MB,191);">/dev/sdc1 1 81928388592 83 Linux
Disk /dev/sdd: 2147 MB,191);">/dev/sdd1 1 10092095662 83 Linux
[root@ora10racn1 rules.d]#(cd /dev/disk/by-path; ls -l *openfiler* | awk'{FS=" "; print $9 " " $10 " " $11}')
ip-192.168.2.110:3260-iscsi-iqn.2006-01.com.openfiler:racdb.asm1-lun-0-part1-> ../../sdc1
ip-192.168.2.110:3260-iscsi-iqn.2006-01.com.openfiler:racdb.asm2-lun-0-> ../../sdb
ip-192.168.2.110:3260-iscsi-iqn.2006-01.com.openfiler:racdb.asm2-lun-0-part1-> ../../sdb1
ip-192.168.2.110:3260-iscsi-iqn.2006-01.com.openfiler:racdb.crs1-lun-0-> ../../sdd
ip-192.168.2.110:3260-iscsi-iqn.2006-01.com.openfiler:racdb.crs1-lun-0-part1-> ../../sdd1
8.配置各个节点的内核参数:
[root@ora10racn1 ~]# sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 4294967295
kernel.shmall = 268435456
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
[root@ora10racn1 ~]#cat >>/etc/security/limits.conf <<EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
EOF
[root@ora10racn1 ~]#cat >> /etc/pam.d/login<<EOF
session required /lib/security/pam_limits.so
EOF
将下面一段加入到/etc/profile文件的末尾:
if [ \$USER = "oracle"]; then
if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
9.配置各个节点的hangcheck-timer:
[root@ora10racn1 ~]#find /lib/modules -name"hangcheck-timer.ko"
/lib/modules/2.6.18-274.el5/kernel/drivers/char/hangcheck-timer.ko
/lib/modules/2.6.32-200.13.1.el5uek/kernel/drivers/char/hangcheck-timer.ko
2)配置hangcheck-timer的两个参数:
[root@ora10racn1 ~]#echo "options hangcheck-timerhangcheck_tick=30 hangcheck_margin=180" >>/etc/modprobe.conf
3)手动加载hangcheckkernel 模块:
[root@ora10racn1 ~]# echo"/sbin/modprobe hangcheck-timer" >> /etc/rc.local
[root@ora10racn1 ~]#modprobehangcheck-timer
[root@ora10racn1 ~]# grepHangcheck /var/log/messages | tail -2
May 16 17:10:22 ora10racn1 kernel: Hangcheck: startinghangcheck timer 0.9.0 (tick is 60 seconds,margin is 180 seconds).
May 16 17:10:22 ora10racn1 kernel: Hangcheck: Usingget_cycles().
10. 配置各个节点间的信任关系:
Ø 在节点1上:
[root@ora10racn2 scripts]# su - oracle
[oracle@ora10racn2 ~]$ mkdir -p ~/.ssh
[oracle@ora10racn2 ~]$ chmod 700 ~/.ssh
[oracle@ora10racn2 ~]$ /usr/bin/ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key(/home/oracle/.ssh/id_rsa):
Enter passphrase (empty for nopassphrase):
Enter same passphrase again: /*此处不需要输入密码
Your identification has been saved in/home/oracle/.ssh/id_rsa.
Your public key has been saved in/home/oracle/.ssh/id_rsa.pub.
The key fingerprint is:
47:d4:27:ab:64:82:24:97:d9:85:59:f0:87:49:7d:c7oracle@ora10racn1.ccz.com
[oracle@ora10racn1 ~]$ touch ~/.ssh/authorized_keys
[oracle@ora10racn1 ~]$ cd .ssh
[oracle@ora10racn1 .ssh]$ ls -l *.pub
-rw-r--r-- 1 oracle oinstall 407 May 1620:29 id_rsa.pub
[oracle@ora10racn1 .ssh]$ ssh ora10racn1.ccz.com cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
The authenticity of host'ora10racn1.ccz.com (192.168.0.131)' can't be established.
RSA key fingerprint isf9:5e:99:da:b1:00:9e:6b:a4:9e:a0:cd:ae:e3:4d:ca.
Are you sure you want to continueconnecting (yes/no)? yes
Warning: Permanently added'ora10racn1.ccz.com,192.168.0.131' (RSA) to the list of known hosts.
oracle@ora10racn1.ccz.com's password: /*此处需要输入原密码
[oracle@ora10racn1 .ssh]$ ssh ora10racn2.ccz.com cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
The authenticity of host'ora10racn2.ccz.com (192.168.0.132)' can't be established.
Are you sure you want to continue connecting(yes/no)? yes
Warning: Permanently added'ora10racn2.ccz.com,192.168.0.132' (RSA) to the list of known hosts.
[oracle@ora10racn1 .ssh]$ scp ~/.ssh/authorized_keys ora10racn2:.ssh/authorized_keys
The authenticity of host 'ora10racn2(192.168.0.132)' can't be established.
Warning: Permanently added 'ora10racn2'(RSA) to the list of known hosts.
authorized_keys 100%1221 1.2KB/s 00:00
[oracle@ora10racn1 .ssh]$ chmod 600 ~/.ssh/authorized_keys
[oracle@ora10racn1 .ssh]$ ssh ora10racn1.ccz.com date
Wed May 16 20:38:33 CST 2012
[oracle@ora10racn1 .ssh]$ ssh ora10racn2.ccz.com date
Wed May 16 20:38:38 CST 2012
[oracle@ora10racn1 .ssh]$
[oracle@ora10racn1 .ssh]$ exec /usr/bin/ssh-agent $SHELL
[oracle@ora10racn1 .ssh]$ /usr/bin/ssh-add
Identity added:/home/oracle/.ssh/id_rsa (/home/oracle/.ssh/id_rsa)
[oracle@ora10racn1 .ssh]$ ssh ora10racn1.ccz.com "date;hostname"
Wed May 16 20:52:16 CST 2012
ora10racn1.ccz.com
[oracle@ora10racn1 .ssh]$ ssh ora10racn2.ccz.com "date;hostname"
Wed May 16 20:52:21 CST 2012
ora10racn2.ccz.com
Ø 在节点2上:
[root@ora10racn2scripts]# su - oracle
[oracle@ora10racn2 ~]$ mkdir -p ~/.ssh
[oracle@ora10racn2 ~]$chmod 700 ~/.ssh
[oracle@ora10racn2 ~]$/usr/bin/ssh-keygen -t rsa
Generatingpublic/private rsa key pair.
Enter file in which tosave the key (/home/oracle/.ssh/id_rsa):
Enter passphrase(empty for no passphrase):
Enter same passphraseagain:
Your identificationhas been saved in /home/oracle/.ssh/id_rsa.
Your public key hasbeen saved in /home/oracle/.ssh/id_rsa.pub.
The key fingerprintis:
73:ec:af:49:ad:f1:3d:af:96:3a:d5:1f:5c:a7:d0:eaoracle@ora10racn2.ccz.com
[oracle@ora10racn2.ssh]$ chmod 600 ~/.ssh/authorized_keys
[oracle@ora10racn2.ssh]$ ssh ora10racn1.ccz.com hostname
[oracle@ora10racn2.ssh]$ ssh ora10racn1.ccz.com date
Wed May 16 20:37:53CST 2012
[oracle@ora10racn2.ssh]$ ssh ora10racn2.ccz.com date
The authenticity ofhost 'ora10racn2.ccz.com (192.168.0.132)' can't be established.
Are you sure you wantto continue connecting (yes/no)? yes
Warning: Permanentlyadded 'ora10racn2.ccz.com,191);">Wed May 16 20:38:00CST 2012
[oracle@ora10racn2.ssh]$ ssh ora10racn2.ccz.com hostname
ora10racn2.ccz.com
[oracle@ora10racn2.ssh]$ ssh ora10racn2.ccz.com date
Wed May 16 20:38:11CST 2012
[oracle@ora10racn2.ssh]$ exec /usr/bin/ssh-agent $SHELL
[oracle@ora10racn2.ssh]$ /usr/bin/ssh-add
[oracle@ora10racn2.ssh]$ ssh ora10racn1.ccz.com "date;hostname"
Wed May 16 20:52:36CST 2012
[oracle@ora10racn2.ssh]$ ssh ora10racn2.ccz.com "date;hostname"
Wed May 16 20:52:41CST 2012
ora10racn2.ccz.com
11. 在各个节点oracle帐号的.bash_profile中增加下段以disable stty:
if [ -t 0 ]; then
stty intr ^C
fi
12. 在各个节点的图形化界面中diskable SELinux
#/usr/bin/system-config-securitylevel &
13. 在各个节点安装并配置ocfs2:
1)安装ocfs2
[root@ora10racn2 Server]# pwd
/media/OL5.7 x86_64dvd 20110728/Server
[root@ora10racn2Server]# ls -l ocfs2*
-rw-r--r-- 1 rootroot 328649 Jul 26 2011ocfs2-2.6.18-274.el5-1.4.8-2.el5.x86_64.rpm
-rw-r--r-- 1 rootroot 333910 Jul 26 2011ocfs2-2.6.18-274.el5debug-1.4.8-2.el5.x86_64.rpm
-rw-r--r-- 1 rootroot 328371 Jul 26 2011ocfs2-2.6.18-274.el5xen-1.4.8-2.el5.x86_64.rpm
-rw-r--r-- 1 rootroot 457984 Sep 17 2010 ocfs2console-1.6.3-2.el5.x86_64.rpm
-rw-r--r-- 1 root root1825960 Sep 17 2010ocfs2-tools-1.6.3-2.el5.x86_64.rpm
-rw-r--r-- 1 rootroot 180899 Sep 17 2010 ocfs2-tools-devel-1.6.3-2.el5.x86_64.rpm
[root@ora10racn2Server]#rpm -Uvhocfs2-2.6.18-274.el5-1.4.8-2.el5.x86_64.rpm \
>ocfs2console-1.6.3-2.el5.x86_64.rpm \
>ocfs2-tools-1.6.3-2.el5.x86_64.rpm \
>ocfs2-2.6.18-274.el5xen-1.4.8-2.el5.x86_64.rpm
warning: ocfs2-2.6.18-274.el5-1.4.8-2.el5.x86_64.rpm:Header V3 DSA signature: NOKEY,191);"> package ocfs2-tools-1.6.3-2.el5.x86_64is already installed
package ocfs2console-1.6.3-2.el5.x86_64is already installed
[root@ora10racn2Server]#
2)diskable SELinux
[root@ora10racn2Server]# /usr/bin/system-config-securitylevel &
3)在两个节点上配置OCFS2
[root@ora10racn1Server]#ocfs2console &
依次【Cluster】-->【Configure Nodes】-->【add】,在每个节点上都要增加两个节点信息,注意此时虽然IP选用的是心跳IP,但hostname用的是主机名称(即hostname命令的返回值)
配置后的结果写入到文件/etc/ocfs2/cluster.conf中
node:
ip_port = 7777
ip_address = 10.10.0.131
number = 0
name = ora10racn1.ccz.com
cluster = ocfs2
ip_port = 7777
ip_address = 10.10.0.132
number = 1
name = ora10racn2.ccz.com
cluster:
node_count = 2
name = ocfs2
注意:如果在用ocfs2console增加节点时报以下错误:
o2cb_ctl: Unable toaccess cluster service while creating node
Could not add nodenode1
则可以先将/etc/ocfs2/cluster.conf改名,然后使用ocfs2console重新加:
此时可以查看o2cb服务:
[oracle@ora10racn1 ~]$/etc/init.d/o2cb status
Driver for"configfs": Loaded
Filesystem"configfs": Mounted
Stack glue driver:Loaded
Stack plugin"o2cb": Loaded
Driver for"ocfs2_dlmfs": Loaded
Filesystem"ocfs2_dlmfs": Mounted
Checking O2CB clusterocfs2: Online
Heartbeat deadthreshold = 31
Network idle timeout: 30000
Network keepalive delay: 2000
Network reconnect delay: 2000
Checking O2CBheartbeat: Active
4)修改o2cb的配置(只需要在一个节点上执行),将heartbeat deadthreshold从缺省的31秒改为61秒:
[root@ora10racn1 ~]# /etc/init.d/o2cb offline ocfs2
Stopping O2CB clusterocfs2: OK
[root@ora10racn1 ~]# /etc/init.d/o2cb unload
Unmounting ocfs2_dlmfsfilesystem: OK
Unloading module"ocfs2_dlmfs": OK
Unloading module"ocfs2_stack_o2cb": OK
Unmounting configfsfilesystem: OK
Unloading module"configfs": OK
[root@ora10racn1 ~]# /etc/init.d/o2cb configure
Configuring the O2CBdriver.
This will configurethe on-boot properties of the O2CB driver.
The followingquestions will determine whether the driver is loaded on
boot. The current values will be shown in brackets('[]'). Hitting
<ENTER> withouttyping an answer will keep that current value.Ctrl-C
will abort.
Load O2CB driver onboot (y/n) [y]:
Cluster stack backingO2CB [o2cb]:
Cluster to start onboot (Enter "none" to clear) [ocfs2]:
Specify heartbeat deadthreshold (>=7) [31]: 61
Specify network idletimeout in ms (>=5000) [30000]:
Specify networkkeepalive delay in ms (>=1000) [2000]:
Specify networkreconnect delay in ms (>=2000) [2000]:
Writing O2CBconfiguration: OK
Loading filesystem"configfs": OK
Mounting configfsfilesystem at /sys/kernel/config: OK
Loading stack plugin"o2cb": OK
Loading filesystem"ocfs2_dlmfs": OK
Mounting ocfs2_dlmfsfilesystem at /dlm: OK
Setting cluster stack"o2cb": OK
Starting O2CB clusterocfs2: OK
检查修改结果:
Stack plugin "o2cb":Loaded
Heartbeat deadthreshold = 61
Checking O2CB heartbeat:Active
5)格式化OCFS2文件系统(只能在一个节点上执行):
[root@ora10racn1 ~]# mkfs.ocfs2 -b 4k -C 32k -N 4 -L oracrsfiles/dev/iscsi/crs1/part1
mkfs.ocfs2 1.6.3
Cluster stack: classico2cb
Overwriting existingocfs2 partition.
Proceed (y/N): y
Label: oracrsfiles
Features: sparsebackup-super unwritten inline-data strict-journal-super
Block size: 4096 (12bits)
Cluster size: 32768(15 bits)
Volume size:2145943552 (65489 clusters) (523912 blocks)
Cluster groups: 3(tail covers 977 clusters,rest cover 32256 clusters)
Extent allocator size:4194304 (1 groups)
Journal size: 67108864
Node slots: 4
Creating bitmaps: done
Initializingsuperblock: done
Writing system files:done
Writing superblock:done
Writing backupsuperblock: 1 block(s)
Formatting Journals:done
Growing extentallocator: done
Formatting slot map:done
Formatting quotafiles: done
Writing lost+found:done
mkfs.ocfs2 successful
6)加载ocfs2文件系统(需要在两个节点上运行):
[root@ora10racn1 ~]# mount -t ocfs2 -o datavolume,nointr -L"oracrsfiles" /u02
[root@ora10racn1 ~]# mount
/dev/mapper/VolGroup00-LogVol00on / type ext3 (rw)
proc on /proc typeproc (rw)
sysfs on /sys typesysfs (rw)
devpts on /dev/ptstype devpts (rw,gid=5,mode=620)
/dev/sda1 on /boottype ext3 (rw)
tmpfs on /dev/shm typetmpfs (rw)
none on/proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on/var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
192.168.2.110:/mnt/nfs4backup/nfs4backup/nfs4backupon /mnt/share type nfs(rw,hard,nointr,tcp,noac,nfsvers=3,timeo=600,rsize=32768,wsize=32768,addr=192.168.2.110)
configfs on/sys/kernel/config type configfs (rw)
ocfs2_dlmfs on /dlmtype ocfs2_dlmfs (rw)
/dev/sdd1 on/u02 type ocfs2 (rw,_netdev,datavolume,heartbeat=local)
7)在两个节点上修改/etc/fstab以让系统启动时自动加载ocfs2文件系统:
[root@ora10racn1 ~]# vi /etc/fstab
/dev/VolGroup00/LogVol00/ ext3defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/VolGroup00/LogVol01swap swap defaults 0 0
/home/swap swap swapdefaults 0 0
192.168.2.110:/mnt/nfs4backup/nfs4backup/nfs4backup /mnt/share nfsrw,vers=3,wsize=32768 00
LABEL=oracrsfiles /u02 ocfs2 _netdev,nointr 0 0
8)在两个节点上检查o2cb在各个运行级别上的运行设置:
[root@ora10racn1 ~]# chkconfig --list o2cb
o2cb 0:off 1:off2:on3:on 4:on 5:on 6:off
9)在一个节点上检查并修正ocfs2文件系统的所有者属性及权限属性:
[root@ora10racn1 /]# ls -ld /u02
drwxr-xr-x 3 root root 3896 May 16 21:54 /u02
[root@ora10racn1 /]# chown oracle:oinstall /u02
[root@ora10racn1 /]# chmod 775 /u02
drwxr-xr-x 3 oracle oinstall 3896 May 16 21:54 /u02
10)创建oracleclusterware 的相关目录(只需在一个节点上运行):
[root@ora10racn1 ~]# mkdir -p /u02/oradata/racdb
[root@ora10racn1 ~]# chown -R oracle:oinstall /u02/oradata
[root@ora10racn1 ~]# chmod -R 775 /u02/oradata
[root@ora10racn1 ~]# ls -l /u02/oradata
drwxr-xr-x 2 oracleoinstall 3896 May 16 22:01 racdb
14. 在两个节点分别安装ASMLib
1)安装,其中前两个包在OLE5.7的介质中有,可直接安装,第三个需要到oracle网站下载:
[root@ora10racn1Server]# rpm -Uvhoracleasm-2.6.18-274.el5-2.0.5-1.el5.x86_64.rpm \
oracleasm-support-2.1.7-1.el5.x86_64.rpm
warning:oracleasm-2.6.18-274.el5-2.0.5-1.el5.x86_64.rpm: Header V3 DSA signature:NOKEY,191);"> 1:oracleasm-support########################################### [ 50%]
2:oracleasm-2.6.18-274.el###########################################[100%]
[root@ora10racn1Server]# cd /home/oracle
[root@ora10racn1oracle]# ls
database Desktoporacleasmlib-2.0.4-1.el5.x86_64.rpm
[root@ora10racn1oracle]# rpm -Uvh oracleasmlib-2.0.4-1.el5.x86_64.rpm
warning:oracleasmlib-2.0.4-1.el5.x86_64.rpm: Header V3 DSA signature: NOKEY,191);"> 1:oracleasmlib########################################### [100%]
2)在两个节点上配置ASMLib:
[root@ora10racn1oracle]# /etc/init.d/oracleasm configure
Configuring the OracleASM library driver.
This will configurethe on-boot properties of the Oracle ASM library
driver. The following questions will determinewhether the driver is
loaded on boot andwhat permissions it will have. Thecurrent values
will be shown in brackets('[]'). Hitting <ENTER> withouttyping an
answer will keep thatcurrent value. Ctrl-C will abort.
Default user to ownthe driver interface []: oracle
Default group to ownthe driver interface []: oinstall
Start Oracle ASMlibrary driver on boot (y/n) [n]: y
Scan for Oracle ASMdisks on boot (y/n) [y]: y
Writing Oracle ASMlibrary driver configuration: done
Initializing theOracle ASMLib driver: [ OK ]
Scanning the systemfor Oracle ASMLib disks: [ OK ]
3)创建ASM磁盘(只需在一个节点上执行创建,在其余节点上扫描即可):
节点一:
[root@ora10racn1oracle]# /etc/init.d/oracleasm listdisks
[root@ora10racn1oracle]# /etc/init.d/oracleasm createdisk VOL1/dev/iscsi/asm1/part1
Marking disk"VOL1" as an ASM disk: [OK ]
[root@ora10racn1oracle]# /etc/init.d/oracleasm createdisk VOL2 /dev/iscsi/asm2/part1
Marking disk"VOL2" as an ASM disk: [OK ]
[root@ora10racn1oracle]# /etc/init.d/oracleasm listdisks
VOL1
VOL2
节点二:
[root@ora10racn2oracle]# /etc/init.d/oracleasm listdisks
[root@ora10racn2oracle]# /etc/init.d/oracleasm scandisks
Scanning the systemfor Oracle ASMLib disks: [ OK ]
VOL2
15. 安装cluster软件前的预检:
1)在两个节点上安装cvuqdisk(只有RHEL需要)
[oracle@ora10racn1 ~]$su -
Password:
[root@ora10racn1 ~]# rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n"|grep cvuqdisk
[root@ora10racn1 ~]# cd /home/oracle/ clusterware/rpm
[root@ora10racn1 rpm]#ls
cvuqdisk-1.0.1-1.rpm
[root@ora10racn1 rpm]# rpm -Uvh cvuqdisk-1.0.1-1.rpm
1:cvuqdisk########################################### [100%]
[root@ora10racn1 rpm]#scp ./cvuqdisk-1.0.1-1.rpm ora10racn2.ccz.com:/home/oracle
Are you sure you wantto continue connecting (yes/no)? yes
root@ora10racn2.ccz.com'spassword:
cvuqdisk-1.0.1-1.rpm
[root@ora10racn2oracle]# rpm -Uvh cvuqdisk-1.0.1-1.rpm
Preparing... ###########################################[100%]
1:cvuqdisk########################################### [100%]
2)安装前检测(在oracle帐号下执行,且只需在一个节点上运行):
[oracle@ora10racn1cluvfy]$ cd /home/oracle/clusterware/cluvfy
[oracle@ora10racn1cluvfy]$ mkdir -p jdk14
[oracle@ora10racn1cluvfy]$ unzip jrepack.zip -d jdk14
[oracle@ora10racn1cluvfy]$ export CV_HOME=/home/oracle/clusterware/cluvfy[oracle@ora10racn1 cluvfy]$ exportCV_JDKHOME=/home/oracle/clusterware/cluvfy/jdk14[oracle@ora10racn1 cluvfy]$ ./runcluvfy.sh stage-pre crsinst -n ora10racn1,ora10racn2 -verbose
在检测中报
Check: Userequivalence for user "oracle"
Node NameComment
------------------------------------ ------------------------
ora10racn2 passed
ora10racn1 Failed
Result: Userequivalence check Failed for user "oracle".
WARNING:
User equivalence isnot set for nodes:
ora10racn1
Verification willproceed with nodes:
ora10racn2
这是因为在设置用户等效性后,第一次运行需要确认,而系统将这个确认视作失败,因此应手动先在各个节点上对所有节点(包括自身)进行下测试并确认,以确保第二次测试无需确认:
[oracle@ora10racn1 cluvfy]$ sshora10racn1 date
The authenticity ofhost 'ora10racn1 (192.168.0.131)' can't be established.
Warning: Permanentlyadded 'ora10racn1' (RSA) to the list of known hosts.
Thu May 17 08:45:40CST 2012
[oracle@ora10racn1 cluvfy]$ sshora10racn2 date
Thu May 17 08:45:55CST 2012
[oracle@ora10racn1 cluvfy]$ sshora10racn1 date
Thu May 17 08:50:10CST 2012
再次进行检测,遇到报错:
ERROR:
Could not find asuitable set of interfaces for VIPs.
Result: Nodeconnectivity check Failed.
根据oracle文档(338924.1),这是一个bug,可以忽略。
3)通过CVU对系统硬件及操作系统进行检测:
[oracle@ora10racn1 cluvfy]$ ./runcluvfy.sh stage -post hwos -n ora10racn1,ora10racn2-verbose
Performing post-checksfor hardware and operating system setup
Checking nodereachability...
......
ERROR:
Could notfind a suitable set of interfaces for VIPs.
Result: Nodeconnectivity check Failed.
Checking sharedstorage accessibility...
WARNING:
Unable todetermine the sharedness of /dev/sda on nodes:
ora10racn2,ora10racn1
Disk Sharing Nodes(2 in count)
/dev/sdb ora10racn2ora10racn1
/dev/sdc ora10racn2ora10racn1
/dev/sdd ora10racn2ora10racn1
Shared storage checkwas successful on nodes "ora10racn2,ora10racn1".
Post-check forhardware and operating system setup was unsuccessful on all the nodes.
检测结果中除了VIP错误(忽略),还有一个warning,这个warning是因为CVU调用了linux的smartctl,而smartctl不能返回iscsi设备的序列号所致,不影响RAC的安装和使用,忽略。
16. 安装clusterware(只需要在一个节点的oracle帐号下运行即可):
注意此处需要将crshome的路径做下修改,不要和oracle的home重合了:
根据实际情况增加节点:
根据情况调整网卡设置,其中eth1是连接存储的网卡,此处我单独设置成DoNotUse:
这只ocr及voting disk的存储路径:
注意:在执行root.sh前先如下修复下srvctl及vipca,否则报错,在实行root.sh后需要在图形界面中以root身份调用vipca配置vip,否则OUI仍然会报错:
分别在两个节点按顺序以root身份run相应脚本,但在最后一个节点run最后一个脚本root.sh时有一个报错:
CSS is active on allnodes.
Waiting for the OracleCRSD and EVMD to start
Oracle CRS stackinstalled and running under init(1M)
Running vipca(silent)for configuring nodeapps
/u01/app/crs/jdk/jre//bin/java:error while loading shared libraries: libpthread.so.0: cannot open sharedobject file: No such file or directory
经查,这是一个oracle的bug,解决方法见:
http://hi.baidu.com/heroofhero/blog/item/76747032361fc84dac4b5f09.html
修复:
Ø /u01/app/crs/bin/vipca:
152 exportLD_LIBRARY_PATH
153 ;;
154 esac
155
156 unset LD_ASSUME_KERNEL
157
158ARGUMENTS=""
159 NUMBER_OF_ARGUMENTS=$#
160 if [ $NUMBER_OF_ARGUMENTS -gt 0 ]; then
161 ARGUMENTS=$*
162 fi
/u01/app/crs/bin/srvctl:
166 #Remove this workaround when the bug 3937317 is fixed
167 LD_ASSUME_KERNEL=2.4.19
168 export LD_ASSUME_KERNEL
169 unset LD_ASSUME_KERNEL
170
171 # Run ops control utility
解决后回到原OUI中点击OK继续。
17. 安装oracle软件,注意只安装软件,不创建数据库:
18. 在两个节点上修正$ORACLE_HOME/bin/srvctl
同安装clusterware后对$CRS_HOME/bin/srvctl做的修正一样,需对$ORACLE_HOME/bin/srvctl进行修正:
LD_ASSUME_KERNEL=2.4.19
exportLD_ASSUME_KERNEL
unsetLD_ASSUME_KERNEL
19. 创建监听起及配置naming method(只需在一个节点运行)
20. 创建cluster数据库:
1)创建前的预检:
[oracle@ora10racn1cluvfy]$ env|grep CV
CV_JDKHOME=/home/oracle/clusterware/cluvfy/jdk14
CV_HOME=/home/oracle/clusterware/cluvfy
[oracle@ora10racn1cluvfy]$ pwd
/home/oracle/clusterware/cluvfy
[oracle@ora10racn1 cluvfy]$ ./runcluvfy.sh stage-pre dbcfg -n ora10racn1,ora10racn2 -d ${ORACLE_HOME} -verbose
预检中除了前面出现过的VIP问题以外,没有其他问题,该VIP问题可以忽略。
2)用dbca创建数据库:
在创建的过程中注意,ASM的spfile缺省位置由于不是共享存储,应改成共享存储位置,如图:
在创建ASM实例时报错:ORA-27125:unable to create shared memory segment
解决的办法是将dba的用户组加入到文件/proc/sys/vm/hugetlb_shm_group
[root@rac2 ~]# idoracle
uid=500(oracle)gid=501(oinstall)groups=501(oinstall),502(dba),503(asmadmin),504(oper)
[root@rac2 ~]#more/proc/sys/vm/hugetlb_shm_group
0
下面用root执行下面的命令,将dba组添加到系统内核中:
[root@rac2 ~]# echo502 >/proc/sys/vm/hugetlb_shm_group
具体参见:http://blog.csdn.net/tianlesoftware/article/details/7309046
3)创建磁盘组时注意修改下磁盘路径:
如使用缺省的ORCL:VOL*,将会导致机器HANG住。
4)创建成功:
21. 创建TAF服务:
[oracle@ora10racn1 ~]$dbca&
注意新建的taf服务不要带域名,否则会报错。
sql> show parameterservice
NAME TYPE VALUE
----------------------------------------------- ------------------------------
service_names string racdb.ccz.com,racdb_taf
[oracle@ora10racn2disks]$ crs_stat -t
Name Type TargetState Host
------------------------------------------------------------
ora....SM1.asmapplication ONLINE ONLINEora10racn1
ora....N1.lsnrapplication ONLINE ONLINEora10racn1
ora....cn1.gsdapplication ONLINE ONLINEora10racn1
ora....cn1.onsapplication ONLINE ONLINEora10racn1
ora....cn1.vipapplication ONLINE ONLINEora10racn1
ora....SM2.asmapplication ONLINE ONLINEora10racn2
ora....N2.lsnrapplication ONLINE ONLINEora10racn2
ora....cn2.gsdapplication ONLINE ONLINEora10racn2
ora....cn2.onsapplication ONLINE ONLINEora10racn2
ora....cn2.vipapplication ONLINE ONLINEora10racn2
ora.racdb.db application ONLINEONLINE ora10racn1
ora....b1.instapplication ONLINE ONLINEora10racn1
ora....b2.instapplication ONLINE ONLINEora10racn2
ora...._taf.csapplication ONLINE ONLINEora10racn1
ora....db1.srvapplication ONLINE ONLINEora10racn1
ora....db2.srvapplication ONLINE ONLINEora10racn2
设置taf服务在系统启动时自动启动:
[oracle@ora10racn2bash]$ srvctl enable service -d racdb -s racdb_taf
查看taf服务的状态:
[oracle@ora10racn2bash]$srvctl config service -d racdb -s racdb_taf -a
racdb_tafPREF: racdb1 racdb2 AVAIL: TAF: basic
22. 重新编译数据库对象:
$ sqlplus / as sysdba
23. 开启系统archive模式:
1)在一号节点上关闭RAC设置:
SYS@racdb1 sql>showparameter cluster_database
cluster_database boolean TRUE
cluster_database_instances integer 2
SYS@racdb1sql>alter system set cluster_database=falsescope=spfile sid='racdb1';
2)shutdown RAC上所有实例:
[oracle@ora10racn1admin]$ srvctl stop database -d racdb
[oracle@ora10racn1admin]$ crs_stat -t
Name Type Target StateHost
ora....N1.lsnr application ONLINEONLINE ora10racn1
ora....SM2.asm application ONLINEONLINE ora10racn2
ora.racdb.db application OFFLINEOFFLINE
ora....b1.instapplication OFFLINE OFFLINE
ora....b2.instapplication OFFLINE OFFLINE
ora...._taf.csapplication OFFLINEOFFLINE
ora....db1.srvapplication ONLINE OFFLINE
ora....db2.srvapplication ONLINE OFFLINE
3)在1号节点上启动实例到mount状态:
SYS@racdb1 sql>startup mount;
ORACLE instancestarted.
Total System GlobalArea 1862270976 bytes
Fixed Size 2021600 bytes
Variable Size 469763872 bytes
Database Buffers 1375731712 bytes
Redo Buffers 14753792 bytes
Database mounted.
SYS@racdb1sql>archive log list;
Database log mode No Archive Mode
Automaticarchival Disabled
ArchivedestinationUSE_DB_RECOVERY_FILE_DEST
Oldest online logsequence 33
Current logsequence 34
4)在1号节点上打开archive模式:
SYS@racdb1sql>alter database archivelog;
Database altered.
5)在1号节点上enable cluster的设置并关闭实例:
SYS@racdb1sql>alter system set cluster_database=true scope=spfile sid='racdb1';
System altered.
SYS@racdb1sql>shutdown immediate;
ORA-01109: databasenot open
Database dismounted.
ORACLE instance shutdown.
6)启动所有实例并验证:
[oracle@ora10racn1admin]$ srvctl start database -d racdb
[oracle@ora10racn1admin]$ sqlplus /nolog
sql*Plus: Release10.2.0.1.0 - Production on Fri May 18 17:44:53 2012
Copyright (c) 1982,2005,Oracle. All rights reserved.
@ sql>conn / assysdba
Connected.
Database log mode ArchiveMode
Automaticarchival Enabled
Next log sequence toarchive 34
Current logsequence 34
24. 建立统一的password文件:
1)将一个节点上的ASM及RDBMS的口令文件移到共享文件系统上:
oracle@ora10racn2dbs]$ cd $ORACLE_HOME/dbs
[oracle@ora10racn2dbs]$ ls
ab_+ASM2.dat hc_+ASM2.dathc_racdb2.dat init+ASM2.ora initdw.orainit.ora initracdb2.ora orapw+ASM2orapwracdb2
[oracle@ora10racn2dbs]$ mv ./orapw+ASM2 /u02/oradata/racdb/dbs/orapw+ASM
[oracle@ora10racn2dbs]$ mv ./orapwracdb2/u02/oradata/racdb/dbs/orapwracdb
2)在各个节点建立到共享口令文件的软连接:
[oracle@ora10racn2dbs]$ pwd
/u01/app/oracle/product/10.2.0/db_1/dbs
[oracle@ora10racn2dbs]$ ln -s /u02/oradata/racdb/dbs/orapw+ASM/u01/app/oracle/product/10.2.0/db_1/dbs/orapw+ASM2
[oracle@ora10racn2dbs]$ ln -s /u02/oradata/racdb/dbs/orapwracdb/u01/app/oracle/product/10.2.0/db_1/dbs/orapwracdb2
[oracle@ora10racn2dbs]$ ls -l
total 48
-rw-rw---- 1 oracleoinstall 1571 May 18 15:00 ab_+ASM2.dat
-rw-rw---- 1 oracleoinstall 1552 May 18 15:00 hc_+ASM2.dat
-rw-rw---- 1 oracleoinstall 1552 May 18 17:44 hc_racdb2.dat
-rw-r----- 1 oracleoinstall 47 May 18 14:59 init+ASM2.ora
-rw-r----- 1 oracleoinstall 12920 May 3 2001 initdw.ora
-rw-r----- 1 oracleoinstall 8385 Sep 11 1998 init.ora
-rw-r----- 1 oracleoinstall 39 May 18 15:33initracdb2.ora
lrwxrwxrwx 1 oracleoinstall 32 May 19 08:22 orapw+ASM2-> /u02/oradata/racdb/dbs/orapw+ASM
lrwxrwxrwx 1 oracleoinstall 33 May 19 08:22 orapwracdb2-> /u02/oradata/racdb/dbs/orapwracdb
[oracle@ora10racn1dbs]$ rm -r orapw+ASM1
[oracle@ora10racn1dbs]$ rm -r orapwracdb1
[oracle@ora10racn1dbs]$ ln -s /u02/oradata/racdb/dbs/orapw+ASM/u01/app/oracle/product/10.2.0/db_1/dbs/orapw+ASM1
[oracle@ora10racn1dbs]$ ln -s /u02/oradata/racdb/dbs/orapwracdb/u01/app/oracle/product/10.2.0/db_1/dbs/orapwracdb1
[oracle@ora10racn1dbs]$ ls -l
-rw-rw---- 1 oracleoinstall 796 May 18 14:59 ab_+ASM1.dat
-rw-rw---- 1 oracleoinstall 1552 May 18 14:59 hc_+ASM1.dat
-rw-rw---- 1 oracleoinstall 1552 May 18 17:43 hc_racdb1.dat
-rw-r----- 1 oracleoinstall 47 May 18 14:59 init+ASM1.ora
-rw-r----- 1 oracleoinstall 39 May 18 15:33initracdb1.ora
lrwxrwxrwx 1 oracleoinstall 32 May 19 08:27 orapw+ASM1-> /u02/oradata/racdb/dbs/orapw+ASM
lrwxrwxrwx 1 oracleoinstall 33 May 19 08:27 orapwracdb1-> /u02/oradata/racdb/dbs/orapwracdb
25. 修改各个数据文件的size:
NAMEBYTES/(1024*1024)
-------------------------------------------------------------------
+ORADAT/racdb/datafile/system.259.783615899 480
+ORADAT/racdb/datafile/undotbs1.260.783615911 330
+ORADAT/racdb/datafile/sysaux.261.783615915 270
+ORADAT/racdb/datafile/undotbs2.263.783615923 200
+ORADAT/racdb/datafile/users.264.7836159295
SYS@racdb2sql>alter database datafile '+ORADAT/racdb/datafile/users.264.783615929'resize 1024M;
Database altered.
SYS@racdb2sql>alter tablespace users add datafile '+ORADAT' size 1024m autoextend on;
Tablespace altered.
SYS@racdb2sql>create tablespace indx datafile '+ORADAT' size 1024M
2autoextend on next 50M maxsize unlimited
3* extent management local autoallocatesegment space management auto;
SYS@racdb2sql>alter database datafile '+ORADAT/racdb/datafile/system.259.783615899'resize 800M;
SYS@racdb2sql>alter database datafile '+ORADAT/racdb/datafile/sysaux.261.783615915'resize 500M;
SYS@racdb2sql>alter database datafile '+ORADAT/racdb/datafile/undotbs1.260.783615911'resize 1024m;
SYS@racdb2sql>alter database datafile '+ORADAT/racdb/datafile/undotbs2.263.783615923'resize 1024M;
SYS@racdb2sql>select name,bytes/(1024*1024) from v$datafile;
NAME BYTES/(1024*1024)
+ORADAT/racdb/datafile/system.259.783615899 800
+ORADAT/racdb/datafile/undotbs1.260.783615911 1024
+ORADAT/racdb/datafile/sysaux.261.783615915 500
+ORADAT/racdb/datafile/undotbs2.263.783615923 1024
+ORADAT/racdb/datafile/users.264.783615929 1024
+ORADAT/racdb/datafile/users.268.783679533 1024
+ORADAT/racdb/datafile/indx.269.783679683 1024
+ORADAT/racdb/tempfile/temp.262.783615919 28
SYS@racdb2sql>alter database tempfile '+ORADAT/racdb/tempfile/temp.262.783615919'resize 1024M;
Database altered.