RedHat5.5+Openfiler2.9+Oracle11gR2 RAC+ASM

 

作者 阿九【转载时请务必以超链接形式标明文章原始出处和作者信息】 



一、硬件环境

3 DELL T410塔式服务器

 

共享存储

其中一台安装openfiler系统,作为共享存储使用。

二、软件环境

操作系统:

RedHat 5.5

 

数据库:

Oracle11gR2

 

存储环境:

openfiler2.9

三、安装目录规划

grid用户:

ORACLE_BASE=/u01/app/base

ORACLE_HOME=/u01/app/grid

 

oracle用户

ORACLE_BASE=/u01/app/oracle

ORACLE_HOME=$ORACLE_BASE/db11g

 

ASM实例SID+ASM1 \ +ASM2

集群数据库:rac1 \ rac2

集群UNIQUE_NAMErac

四、IP地址规划

公网IP

IP地址

节点1

192.168.4.210

节点2

192.168.4.220

私有网络:

 

节点1

172.10.10.10

节点2

172.10.10.20

VIP

 

节点1

192.168.4.101

节点2

192.168.4.102

SCAN

192.168.4.103

共享存储:

192.168.4.230

 

五、配置openfiler共享存储

openfiler安装及磁盘配置,请参照文档《51CTO下载-Openfiler2.3.pdf

 

六、在linux上配置共享存储

6.1、安装iscsi

[root@rac1  ~]# rpm -Uvh iscsi-initiator-utils-6.2.0.871-0.10.el5.x86_64.rpm

warning: iscsi-initiator-utils-6.2.0.871-0.10.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID e8562897

Preparing... ########################################### [100%]

1:iscsi-initiator-utils ########################################### [100%]

6.2、配置iscsi服务启动

[root@rac1  ~]# service iscsid start

[  OK  ]off network shutdown. Starting iSCSI daemon: [  OK  ]

[  OK  ]

[root@centos ~]# chkconfig iscsid on

[root@centos ~]# chkconfig iscsi on

 

6.3、查找网络上可用的iscsi磁盘

[root@rac01 vsftpd]# iscsiadm -m discovery -t sendtargets -p 192.168.4.230

192.168.4.230:3260,1 iqn.2006-01.com.openfiler:tsn.bd8633ac148e

[root@rac01 vsftpd]#

 

6.4、手动添加设备到本地

[root@rac02 by-path]# fdisk -l

 

Disk /dev/sda: 499.5 GB, 499558383616 bytes

255 heads, 63 sectors/track, 60734 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       26121   209712510   83  Linux

/dev/sda3           26122       26643     4192965   82  Linux swap / Solaris

 

 [root@rac02 by-path]#

 

 

[root@centos ~]# iscsiadm -m node -T iqn.2006-01.com.openfiler:tsn.bd8633ac148e -p 192.168.4.230 -l

Logging in to [iface: default, target: iqn.2006-01.com.openfiler:tsn.bd8633ac148e, portal: 192.168.4.230,3260]

Login to [iface: default, target: iqn.2006-01.com.openfiler:tsn.bd8633ac148e, portal: 192.168.4.230,3260] successful.

 

 

[root@rac02 by-path]# fdisk -l

 

Disk /dev/sda: 499.5 GB, 499558383616 bytes

255 heads, 63 sectors/track, 60734 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       26121   209712510   83  Linux

/dev/sda3           26122       26643     4192965   82  Linux swap / Solaris

 

Disk /dev/sdb: 204.9 GB, 204950470656 bytes

255 heads, 63 sectors/track, 24917 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

 

Disk /dev/sdb doesn't contain a valid partition table

[root@rac02 by-path]#

 

至此、openfiler共享存储配置完毕。

七、Oracle安装前配置

7.1、检查所需软件包

root用户登录,在两节点上执行如下操作

 

RedHat5.5上安装Oracle11gR2需要如下软件包

binutils-2.17.50.0.6

compat-libstdc++-33-3.2.3

elfutils-libelf-0.125

elfutils-libelf-devel-0.125

elfutils-libelf-devel-static-0.125

gcc-4.1.2

gcc-c++-4.1.2

glibc-2.5-24

glibc-common-2.5

glibc-devel-2.5

glibc-headers-2.5

kernel-headers-2.6.18

ksh-20060214

libaio-0.3.106

libaio-devel-0.3.106

libgcc-4.1.2

libgomp-4.1.2

libstdc++-4.1.2

libstdc++-devel-4.1.2

make-3.81

numactl-devel-0.9.8.i386

sysstat-7.0.2

unixODBC-2.2.11-7.1.i386.rpm

unixODBC-devel-2.2.11-7.1.i386.rpm

 

执行命令rpm –qa 来查看软件包是否安装

[root@rac01 ~]# rpm -qa binutils* compat-libstdc* elfutils-libelf* elfutils-libelf-devel* elfutils-libelf-devel-static* gcc* gcc-c++* glibc* glibc-common* glibc-devel* glibc-headers* kernel-headers* ksh* libaio* libaio-devel* libgcc* libgomp* libstdc++* libstdc++-devel* make* numactl-devel* sysstat*

elfutils-libelf-0.137-3.el5

numactl-devel-0.9.8-11.el5

glibc-2.5-49

compat-libstdc++-33-3.2.3-61

glibc-devel-2.5-49

elfutils-libelf-devel-static-0.137-3.el5

gcc44-4.4.0-6.el5

libgcc-4.1.2-48.el5

compat-libstdc++-296-2.96-138

glibc-headers-2.5-49

gcc-c++-4.1.2-48.el5

elfutils-libelf-devel-0.137-3.el5

gcc-gnat-4.1.2-48.el5

glibc-common-2.5-49

binutils-2.17.50.0.6-14.el5

libstdc++-devel-4.1.2-48.el5

libstdc++44-devel-4.4.0-6.el5

gcc44-gfortran-4.4.0-6.el5

sysstat-7.0.2-3.el5

kernel-headers-2.6.18-194.el5

make-3.81-3.el5

libaio-0.3.106-5

ksh-20100202-1.el5

libgomp-4.4.0-6.el5

gcc-4.1.2-48.el5

gcc44-c++-4.4.0-6.el5

libstdc++-4.1.2-48.el5

gcc-gfortran-4.1.2-48.el5

gcc-java-4.1.2-48.el5

gcc-objc-4.1.2-48.el5

libaio-devel-0.3.106-5

[root@rac01 ~]#

 

如果没有软件包,则在安装CD中找到安装

挂载光驱的命令为:mount -o ro /dev/cdrom /mnt/cdrom

[root@rac01 by-path]# mount -o ro /dev/cdrom /mnt/cdrom

[root@rac01 by-path]#

 

安装rpm软件包

[root@rac01 Server]# rpm -Uvh sysstat-7.0.2-3.el5.i386.rpm

warning: sysstat-7.0.2-3.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186

Preparing...                ########################################### [100%]

   1:sysstat                ########################################### [100%]

[root@rac01 Server]#

7.2、更改网络UDPTCP的临时端口的其实范围(非必须)

root用户登录,在两节点上执行

[root@rac02 by-path]# cat /proc/sys/net/ipv4/ip_local_port_range

32768   61000

[root@rac02 by-path]# echo 9000 65500 > /proc/sys/net/ipv4/ip_local_port_range

[root@rac02 by-path]# cat /proc/sys/net/ipv4/ip_local_port_range

9000    65500

[root@rac02 by-path]#

 

7.3、创建操作系统用户组及用户

root用户登录,在两节点上执行

 

创建用户组

[root@rac01 Server]# groupadd -g 501 oinstall

[root@rac01 Server]# groupadd -g 502 dba

 

 

创建grid用户

[root@rac01 Server]# useradd -u 8001 -g oinstall -G dba grid

[root@rac01 Server]# passwd grid

Changing password for user grid.

New UNIX password:

BAD PASSWORD: it is based on a dictionary word

Retype new UNIX password:

passwd: all authentication tokens updated successfully.

[root@rac01 ~]#

 

 

创建oracle用户

[root@rac01 Server]# useradd -u 501 -g oinstall -G dba oracle

[root@rac02 Server]# passwd oracle

Changing password for user oracle.

New UNIX password:

BAD PASSWORD: it is based on a dictionary word

Retype new UNIX password:

passwd: all authentication tokens updated successfully.

[root@rac02 Server]#

 

7.4、提高gridoracle用户的shell权限

 

root用户登录,在两节点上的 /etc/security/limits.conf/etc/pam.d/login /etc/profile文件中添加如下内容:

 

/etc/security/limits.conf

 

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

oracle soft stack 10240

 

 

grid soft nproc 2047

grid hard nproc 16384

grid soft nofile 1024

grid hard nofile 65536

grid soft stack 10240

 

/etc/pam.d/login

session required /lib/security/pam_limits.so

 

/etc/profile

if [ $USER = "oracle" ] || [ $USER = "grid" ] ; then

         if [ $SHELL = "/bin/ksh" ]; then

                   ulimit -p 16384

                   ulimit -n 65536

         else

                   ulimit -u 16384 -n 65536

         fi

fi

7.5、配置host文件

root用户登录,在两节点上执行

 

[root@rac01 ~]# cat /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1               rac01 localhost.localdomain localhost

::1             localhost6.localdomain6 localhost6

[root@rac01 ~]#

 

修改host文件添加入下内容

######### public ########

192.168.4.210 rac01

192.168.4.220 rac02

 

######### private ########

172.10.10.10 rac01-priv

172.10.10.20 rac02-priv

 

######### public ########

192.168.4.101 rac01-vip

192.168.4.102 rac02-vip

 

######### scan ########

192.168.4.103 rac-scan

 

修改后的文件为:

[root@rac01 ~]# cat /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1               rac01 localhost.localdomain localhost

::1             localhost6.localdomain6 localhost6

 

######### public ########

192.168.4.210 rac01

192.168.4.220 rac02

 

######### private ########

172.10.10.10 rac01-priv

172.10.10.20 rac02-priv

 

######### public ########

192.168.4.101 rac01-vip

192.168.4.102 rac02-vip

 

######### scan ########

192.168.4.103 rac-scan

[root@rac01 ~]#

 

7.6、修改内核参数

 

root用户登录,在两节点上执行

 

/etc/sysctl.conf文件中添加如下内容

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048586

 

 

执行命令/sbin/sysctl -p使修改立即生效

 

 

7.7、配置用户等效性

grid

在两节点上执行如下命令:

[grid@rac01 ~]$ mkdir ~/.ssh

[grid@rac01 ~]$ chmod 700 ~/.ssh

[grid@rac01 ~]$ ssh-keygen -t rsa

ssh-keygen -t dsaGenerating public/private rsa key pair.

Enter file in which to save the key (/home/grid/.ssh/id_rsa):

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in ssh-keygen -t dsa.

Your public key has been saved in ssh-keygen -t dsa.pub.

The key fingerprint is:

11:d2:c0:13:d6:e0:50:40:0e:98:41:1c:be:3c:8e:61 grid@rac01

[grid@rac01 ~]$

[grid@rac01 ~]$ ssh-keygen -t dsa

Generating public/private dsa key pair.

Enter file in which to save the key (/home/grid/.ssh/id_dsa):

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /home/grid/.ssh/id_dsa.

Your public key has been saved in /home/grid/.ssh/id_dsa.pub.

The key fingerprint is:

76:1d:67:f8:20:41:21:16:43:a8:ca:5a:ac:55:a2:c2 grid@rac01

[grid@rac01 ~]$

[grid@rac01 ~]$

 

在节点一上执行

[grid@rac01 .ssh]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

[grid@rac01 .ssh]$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

[grid@rac01 .ssh]$ ssh rac02 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

The authenticity of host 'rac02 (192.168.4.220)' can't be established.

RSA key fingerprint is f4:4c:d3:34:d8:3e:42:21:95:99:14:73:36:4a:75:a5.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added 'rac02,192.168.4.220' (RSA) to the list of known hosts.

grid@rac02's password:

[grid@rac01 .ssh]$ ssh rac02 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

grid@rac02's password:

[grid@rac01 .ssh]$ scp ~/.ssh/authorized_keys rac02:~/.ssh/authorized_keys

grid@rac02's password:

authorized_keys                                                                                   100% 1984     1.9KB/s   00:00   

[grid@rac01 .ssh]$

 

在节点二上执行

[root@rac02 Server]# passwd oracle

Changing password for user oracle.

New UNIX password:

BAD PASSWORD: it is based on a dictionary word

Retype new UNIX password:

passwd: all authentication tokens updated successfully.

[root@rac02 Server]# su - grid

[grid@rac02 ~]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

[grid@rac02 ~]$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

[grid@rac02 ~]$ ssh rac01 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

The authenticity of host 'rac01 (192.168.4.210)' can't be established.

RSA key fingerprint is d9:bc:92:0b:c2:3f:15:8e:10:fb:0e:a0:40:11:53:5a.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added 'rac01,192.168.4.210' (RSA) to the list of known hosts.

[grid@rac02 ~]$ ssh rac01 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

[grid@rac02 ~]$

 

在两节点上执行如下命令

ssh rac01 date

ssh rac01-priv date

ssh rac02 date

ssh rac02-priv date

如果不要求输入密码则配置成功。

 

oracle

oracle用户登录,重复以上操作

 

7.8、配置安装用户的环境变量

 

grid

grid用户登录,在两节点上编辑 /home/grid/.bash_profile文件

节点一:

export ORACLE_SID=+ASM1

export ORACLE_BASE=/u01/app/base

export ORACLE_HOME=/u01/app/grid

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export NLS_LANG='Simplified Chinese_China'.ZHS16GBK

export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin

 

节点二:

export ORACLE_SID=+ASM2

export ORACLE_BASE=/u01/app/base

export ORACLE_HOME=/u01/app/grid

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export NLS_LANG='Simplified Chinese_China'.ZHS16GBK

export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin

 

 

 

oracle

oracle用户登录,在两节点上编辑 /home/oracle/.bash_profile文件

节点一:

export ORACLE_SID=rac1

export ORACLE_UNQNAME=rac

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/db11g

export ORA_CRS_HOME=/u01/app/grid

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export NLS_LANG='Simplified Chinese_China'.ZHS16GBK

export PATH=$ORA_CRS_HOME/bin:$ORACLE_HOME/bin:$PATH:$HOME/bin

 

umask 022

 

节点二:

export ORACLE_SID=rac2

export ORACLE_UNQNAME=rac

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/db11g

export ORA_CRS_HOME=/u01/app/grid

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export NLS_LANG='Simplified Chinese_China'.ZHS16GBK

export PATH=$ORA_CRS_HOME/bin:$ORACLE_HOME/bin:$PATH:$HOME/bin

 

umask 022

 

7.9、创建安装目录

root用户登录,在两节点上执行如下命令

 

[root@rac02 Server]# mkdir -p /u01/app/grid

[root@rac02 Server]# mkdir -p /u01/app/oracle

[root@rac02 Server]# chown –R oracle:oinstall /u01

[root@rac02 Server]# chmod –R 775 /u01

[root@rac02 Server]# chown grid:oinstall /u01/app/grid

 

7.10、配置ASM使用的磁盘

root用户登录任一节点。

 

查看现有磁盘分区

[root@rac01 app]# fdisk -l

 

Disk /dev/sda: 499.5 GB, 499558383616 bytes

255 heads, 63 sectors/track, 60734 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       26121   209712510   83  Linux

/dev/sda3           26122       26643     4192965   82  Linux swap / Solaris

 

Disk /dev/sdb: 204.9 GB, 204950470656 bytes

255 heads, 63 sectors/track, 24917 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

 

Disk /dev/sdb doesn't contain a valid partition table

[root@rac01 app]#

 

对磁盘分区

[root@rac01 app]# fdisk /dev/sdb

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel

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.

 

 

The number of cylinders for this disk is set to 24917.

There is nothing wrong with that, but this is larger than 1024,

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)

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

 

Command (m for help): n

Command action

   e   extended

   p   primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-24917, default 1):

Using default value 1

Last cylinder or +size or +sizeM or +sizeK (1-24917, default 24917):

Using default value 24917

 

Command (m for help): w

The partition table has been altered!

 

Calling ioctl() to re-read partition table.

Syncing disks.

[root@rac01 app]#

 

 

查看分区后的磁盘情况

[root@rac01 app]# fdisk -l

 

Disk /dev/sda: 499.5 GB, 499558383616 bytes

255 heads, 63 sectors/track, 60734 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       26121   209712510   83  Linux

/dev/sda3           26122       26643     4192965   82  Linux swap / Solaris

 

Disk /dev/sdb: 204.9 GB, 204950470656 bytes

255 heads, 63 sectors/track, 24917 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

 

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1               1       24917   200145771   83  Linux

[root@rac01 app]#

 

在另一节点查看磁盘分区情况

[root@rac02 app]# fdisk -l

 

Disk /dev/sda: 499.5 GB, 499558383616 bytes

255 heads, 63 sectors/track, 60734 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       26121   209712510   83  Linux

/dev/sda3           26122       26643     4192965   82  Linux swap / Solaris

 

Disk /dev/sdb: 204.9 GB, 204950470656 bytes

255 heads, 63 sectors/track, 24917 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

 

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1               1       24917   200145771   83  Linux

[root@rac02 app]#

 

7.11ASM磁盘配置

http://www.oracle.com/technetwork/server-storage/linux/downloads/rhel5-084877.html下载对应的ASM  RPM

 

安装RPM

root用户登录,在两节点上执行

 

[root@rac01 soft]# rpm -Uvh oracleasm-support-2.1.7-1.el5.i386.rpm

warning: oracleasm-support-2.1.7-1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159

Preparing...                ########################################### [100%]

   1:oracleasm-support      ########################################### [100%]

[root@rac01 soft]#

 

配置ASM磁盘

root用户登录,在两节点上执行

[root@rac01 soft]#service oracleasm configure

Configuring the Oracle ASM library driver.

 

This will configure the on-boot properties of the Oracle ASM library

driver. The following questions will determine whether the driver is

loaded on boot and what permissions it will have. The current values

will be shown in brackets ('[]'). Hitting <ENTER> without typing an

answer will keep that current value. Ctrl-C will abort.

 

Default user to own the driver interface []: grid

Default group to own the driver interface []: dba

Start Oracle ASM library driver on boot (y/n) [n]: y

Scan for Oracle ASM disks on boot (y/n) [y]: y

Writing Oracle ASM library driver configuration: done

Initializing the Oracle ASMLib driver: [ OK  ]

Scanning the system for Oracle ASMLib disks: [ OK  ]

[root@rac01 soft]#

 

查看oracleasm状态

root用户登录,在两节点上执行

 

[root@rac01 soft]# service oracleasm status

Checking if ASM is loaded: yes

Checking if /dev/oracleasm is mounted: yes

[root@rac01 soft]#

 

创建ASM磁盘

root用户登录,在任一一节点创建即可

[root@rac01 soft]# service oracleasm createdisk disk1 /dev/sdb1

Marking disk "disk1" as an ASM disk: [  OK  ]

[root@rac01 soft]#

 

查看已有创建的磁盘

root用户登录,在两节点上执行

[root@rac01 soft]# oracleasm listdisks

DISK1

[root@rac01 soft]#

 

如何磁盘在另一节点以创建,但在该节点未能发现,使用如下命令

[root@rac02 app]# oracleasm listdisks

[root@rac02 app]# oracleasm scandisks

Reloading disk partitions: done

Cleaning any stale ASM disks...

Scanning system for ASM disks...

Instantiating disk "DISK1"

[root@rac02 app]# oracleasm listdisks

DISK1

[root@rac02 app]#

 

 

7.12ntp配置

 

root用户登录,在两节点上标记 /etc/sysconfig/ntpd文件

将文件中的

OPTIONS=" -u ntp:ntp -p /var/run/ntpd.pid" 内容改为

OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"

 

启动ntp服务

[root@rac02 u01]# service ntpd start

启动 ntpd[确定]

[root@rac02 u01]#

 

 

八、安装Oracle Grid Infrastructure

 

8.1、解压文件

rootgrid用户登录均可,视文件权限而定。

[root@rac01 soft]# unzip linux_11gR2_grid.zip

 

8.2、启动安装界面

grid用户登录。

[grid@rac01 soft]# cd grid

[grid @rac01 grid]# ls -l

总计 80

drwxr-xr-x  9 root root 4096 2009-08-17 doc

drwxr-xr-x  4 root root 4096 2009-08-14 install

drwxrwxr-x  2 root root 4096 2009-08-14 response

drwxrwxr-x  2 root root 4096 2009-08-14 rpm

-rwxrwxr-x  1 root root 3795 2009-01-29 runcluvfy.sh

-rwxr-xr-x  1 root root 4353 2009-08-14 runInstaller

drwxrwxr-x  2 root root 4096 2009-08-14 sshsetup

drwxr-xr-x 14 root root 4096 2009-08-14 stage

-rw-r--r--  1 root root 4279 2009-08-18 welcome.html

[grid @rac01 grid]#

[grid@rac01 grid]$ ./runInstaller

正在启动 Oracle Universal Installer...

 

检查临时空间: 必须大于 80 MB  实际为 177858 MB   通过

检查交换空间: 必须大于 150 MB  实际为 4094 MB   通过

检查监视器: 监视器配置至少必须显示 256种颜色。   实际为 16777216   通过

准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2012-02-10_07-53-28PM.请稍候...[grid@rac01 grid]$

 

选择第一项,安装和配置集群的网格基础结构,单击下一步

 

 

选择第一项,高级安装,单击下一步

 

单击下一步

 

修改集群名称及SCAN名称为 /etc/hosts文件配置的名称、单击下一步

 

 

单击添加,输入另一节点的信息,单击下一步

其中SSH连接按钮可以测试用户等效性是否畅通。

 

单击下一步,如果网卡分配错误,可以修改正确后单击下一步

 

选择自动存储管理选项,单击下一步

 

冗余:选择外部,勾选磁盘,单击下一步

 

选择“对这些账户使用同一口令”,忽略oracle口令效验警告

 

 

选择不使用IPMI平台

 

 

 

 

修改所有用户组为 DBA

 

忽略警告

 

 

 

 

 

 

修改 oracle 基目录为 oracleORACLE_BASE

修改软件位置为gridORACLE_BASE

 

 

 

 

 

 

 

执行脚本

root用户登录,在两节点顺序执行

/u01/app/oraInventory/orainstRoot.sh

[root@rac02 ~]# /u01/app/oraInventory/orainstRoot.sh

更改权限/u01/app/oraInventory.

添加组的读取和写入权限。

删除全局的读取, 写入和执行权限。

 

更改组名/u01/app/oraInventory oinstall.

脚本的执行已完成。

[root@rac02 ~]#

 

/u01/app/grid/root.sh

[root@rac1 ~]# /u01/app/grid/root.sh

Running Oracle 11g root.sh script...

 

The following environment variables are set as:

    ORACLE_OWNER= grid

    ORACLE_HOME=  /u01/app/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.sh script.

Now product-specific root actions will be performed.

2012-02-11 20:59:47: Parsing the host name

2012-02-11 20:59:47: Checking for super user privileges

2012-02-11 20:59:47: User has super user privileges

Using configuration parameter file: /u01/app/grid/crs/install/crsconfig_params

Creating trace directory

LOCAL ADD MODE

Creating OCR keys for user 'root', privgrp 'root'..

Operation 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 daemon to inittab

CRS-4123: Oracle High Availability Services has been started.

ohasd is starting

CRS-2672: 尝试启动 'ora.gipcd' ( 'rac1')

CRS-2672: 尝试启动 'ora.mdnsd' ( 'rac1')

CRS-2676: 成功启动 'ora.mdnsd' ( 'rac1')

CRS-2676: 成功启动 'ora.gipcd' ( 'rac1')

CRS-2672: 尝试启动 'ora.gpnpd' ( 'rac1')

CRS-2676: 成功启动 'ora.gpnpd' ( 'rac1')

CRS-2672: 尝试启动 'ora.cssdmonitor' ( 'rac1')

CRS-2676: 成功启动 'ora.cssdmonitor' ( 'rac1')

CRS-2672: 尝试启动 'ora.cssd' ( 'rac1')

CRS-2672: 尝试启动 'ora.diskmon' ( 'rac1')

CRS-2676: 成功启动 'ora.diskmon' ( 'rac1')

CRS-2676: 成功启动 'ora.cssd' ( 'rac1')

CRS-2672: 尝试启动 'ora.ctssd' ( 'rac1')

CRS-2676: 成功启动 'ora.ctssd' ( 'rac1')

 

已成功创建并启动 ASM

 

已成功创建磁盘组 DATA

 

clscfg: -install mode specified

Successfully accumulated necessary OCR keys.

Creating OCR keys for user 'root', privgrp 'root'..

Operation successful.

CRS-2672: 尝试启动 'ora.crsd' ( 'rac1')

CRS-2676: 成功启动 'ora.crsd' ( 'rac1')

CRS-4256: Updating the profile

Successful addition of voting disk 6a7056e6c1b14fcabfe0f4e742ab5fe6.

Successfully replaced voting disk group with +DATA.

CRS-4256: Updating the profile

CRS-4266: Voting file(s) successfully replaced

##  STATE    File Universal Id                File Name Disk group

--  -----    -----------------                --------- ---------

 1. ONLINE   6a7056e6c1b14fcabfe0f4e742ab5fe6 (ORCL:SHAREDISK1) [DATA]

Located 1 voting disk(s).

CRS-2673: 尝试停止 'ora.crsd' ( 'rac1')

CRS-2677: 成功停止 'ora.crsd' ( 'rac1')

CRS-2673: 尝试停止 'ora.asm' ( 'rac1')

CRS-2677: 成功停止 'ora.asm' ( 'rac1')

CRS-2673: 尝试停止 'ora.ctssd' ( 'rac1')

CRS-2677: 成功停止 'ora.ctssd' ( 'rac1')

CRS-2673: 尝试停止 'ora.cssdmonitor' ( 'rac1')

CRS-2677: 成功停止 'ora.cssdmonitor' ( 'rac1')

CRS-2673: 尝试停止 'ora.cssd' ( 'rac1')

CRS-2677: 成功停止 'ora.cssd' ( 'rac1')

CRS-2673: 尝试停止 'ora.gpnpd' ( 'rac1')

CRS-2677: 成功停止 'ora.gpnpd' ( 'rac1')

CRS-2673: 尝试停止 'ora.gipcd' ( 'rac1')

CRS-2677: 成功停止 'ora.gipcd' ( 'rac1')

CRS-2673: 尝试停止 'ora.mdnsd' ( 'rac1')

CRS-2677: 成功停止 'ora.mdnsd' ( 'rac1')

CRS-2672: 尝试启动 'ora.mdnsd' ( 'rac1')

CRS-2676: 成功启动 'ora.mdnsd' ( 'rac1')

CRS-2672: 尝试启动 'ora.gipcd' ( 'rac1')

CRS-2676: 成功启动 'ora.gipcd' ( 'rac1')

CRS-2672: 尝试启动 'ora.gpnpd' ( 'rac1')

CRS-2676: 成功启动 'ora.gpnpd' ( 'rac1')

CRS-2672: 尝试启动 'ora.cssdmonitor' ( 'rac1')

CRS-2676: 成功启动 'ora.cssdmonitor' ( 'rac1')

CRS-2672: 尝试启动 'ora.cssd' ( 'rac1')

CRS-2672: 尝试启动 'ora.diskmon' ( 'rac1')

CRS-2676: 成功启动 'ora.diskmon' ( 'rac1')

CRS-2676: 成功启动 'ora.cssd' ( 'rac1')

CRS-2672: 尝试启动 'ora.ctssd' ( 'rac1')

CRS-2676: 成功启动 'ora.ctssd' ( 'rac1')

CRS-2672: 尝试启动 'ora.asm' ( 'rac1')

CRS-2676: 成功启动 'ora.asm' ( 'rac1')

CRS-2672: 尝试启动 'ora.crsd' ( 'rac1')

CRS-2676: 成功启动 'ora.crsd' ( 'rac1')

CRS-2672: 尝试启动 'ora.evmd' ( 'rac1')

CRS-2676: 成功启动 'ora.evmd' ( 'rac1')

CRS-2672: 尝试启动 'ora.asm' ( 'rac1')

CRS-2676: 成功启动 'ora.asm' ( 'rac1')

CRS-2672: 尝试启动 'ora.DATA.dg' ( 'rac1')

CRS-2676: 成功启动 'ora.DATA.dg' ( 'rac1')

CRS-2672: 尝试启动 'ora.registry.acfs' ( 'rac1')

CRS-2676: 成功启动 'ora.registry.acfs' ( 'rac1')

 

rac1     2012/02/11 21:04:49     /u01/app/grid/cdata/rac1/backup_20120211_210449.olr

Preparing packages for installation...

cvuqdisk-1.0.7-1

Configure Oracle Grid Infrastructure for a Cluster ... succeeded

Updating inventory properties for clusterware

正在启动 Oracle Universal Installer...

 

检查交换空间: 必须大于 500 MB  实际为 4094 MB   通过

The inventory pointer is located at /etc/oraInst.loc

The inventory is located at /u01/app/oraInventory

'UpdateNodeList' 成功。

 

安装完成后状态

[grid@rac1 ~]$ crs_stat -t

名称           类型          目标     状态     主机       

------------------------------------------------------------

ora.DATA.dg    ora....up.type ONLINE    ONLINE    rac1       

ora....ER.lsnr ora....er.type ONLINE    ONLINE    rac1       

ora....N1.lsnr ora....er.type ONLINE    ONLINE    rac1       

ora.asm        ora.asm.type   ONLINE    ONLINE    rac1       

ora.eons       ora.eons.type  ONLINE    ONLINE    rac1       

ora.gsd        ora.gsd.type   OFFLINE   OFFLINE              

ora....network ora....rk.type ONLINE    ONLINE    rac1       

ora.oc4j       ora.oc4j.type  OFFLINE   OFFLINE              

ora.ons        ora.ons.type   ONLINE    ONLINE    rac1       

ora....SM1.asm application    ONLINE    ONLINE    rac1       

ora....C1.lsnr application    ONLINE    ONLINE    rac1       

ora.rac1.gsd   application    OFFLINE   OFFLINE              

ora.rac1.ons   application    ONLINE    ONLINE    rac1       

ora.rac1.vip   ora....t1.type ONLINE    ONLINE    rac1       

ora....SM2.asm application    ONLINE    ONLINE    rac2       

ora....C2.lsnr application    ONLINE    ONLINE    rac2       

ora.rac2.gsd   application    OFFLINE   OFFLINE              

ora.rac2.ons   application    ONLINE    ONLINE    rac2       

ora.rac2.vip   ora....t1.type ONLINE    ONLINE    rac2       

ora....ry.acfs ora....fs.type ONLINE    ONLINE    rac1       

ora.scan1.vip  ora....ip.type ONLINE    ONLINE    rac1       

[grid@rac1 ~]$

 

 

九、安装Oracle 数据库软件

 

9.1、解压文件

[root@rac1 soft]# unzip linux.x64_11gR2_database_2of2.zip

 

9.2、启动安装界面

[oracle@rac1 database]$ ./runInstaller

正在启动 Oracle Universal Installer...

 

检查临时空间: 必须大于 120 MB  实际为 173634 MB   通过

检查交换空间: 必须大于 150 MB  实际为 3952 MB   通过

检查监视器: 监视器配置至少必须显示 256种颜色。   实际为 16777216   通过

准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2012-11-10_11-36-07AM.请稍候...

 

 

 

 

 

 

 

为保证安装顺利,这里测试SSH连接

 

 

 

 

 

 

 

 

 

 

 

执行root脚本,在两个节点顺序执行

[root@rac1 oracle]# /u01/app/oracle/db11g/root.sh

Running Oracle 11g root.sh script...

 

The following environment variables are set as:

    ORACLE_OWNER= oracle

    ORACLE_HOME=  /u01/app/oracle/db11g

 

Enter the full pathname of the local bin directory: [/usr/local/bin]:

The file "dbhome" already exists in /usr/local/bin.  Overwrite it? (y/n)

[n]:

The file "oraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)

[n]:

The file "coraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)

[n]:

 

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.sh script.

Now product-specific root actions will be performed.

Finished product-specific root actions.

[root@rac1 oracle]#

 

 

 

 

十、安装Oracle 数据库

10.1、启动配置程序

oracle用户启动数据库配置程序

[oracle@rac1 ~]$ dbca

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

这报错是因为没有设置ORACLE_UNQNAME环境变量

export ORACLE_UNQNAME=rac

 

 

 

10.2、安装完成后服务状态查看

[root@rac1 app]# /u01/app/grid/bin/crs_stat -t

Name           Type           Target    State     Host       

------------------------------------------------------------

ora.DATA.dg    ora....up.type ONLINE    ONLINE    rac1       

ora....ER.lsnr ora....er.type ONLINE    ONLINE    rac1       

ora....N1.lsnr ora....er.type ONLINE    ONLINE    rac1       

ora.asm        ora.asm.type   ONLINE    ONLINE    rac1       

ora.eons       ora.eons.type  ONLINE    ONLINE    rac1       

ora.gsd        ora.gsd.type   OFFLINE   OFFLINE              

ora....network ora....rk.type ONLINE    ONLINE    rac1       

ora.oc4j       ora.oc4j.type  OFFLINE   OFFLINE               

ora.ons        ora.ons.type   ONLINE    ONLINE    rac1       

ora.rac.db     ora....se.type ONLINE    ONLINE    rac1       

ora....SM1.asm application    ONLINE    ONLINE    rac1       

ora....C1.lsnr application    ONLINE    ONLINE    rac1       

ora.rac1.gsd   application    OFFLINE   OFFLINE              

ora.rac1.ons   application    ONLINE    ONLINE    rac1       

ora.rac1.vip   ora....t1.type ONLINE    ONLINE    rac1       

ora....SM2.asm application    ONLINE    ONLINE    rac2        

ora....C2.lsnr application    ONLINE    ONLINE    rac2       

ora.rac2.gsd   application    OFFLINE   OFFLINE              

ora.rac2.ons   application    ONLINE    ONLINE    rac2       

ora.rac2.vip   ora....t1.type ONLINE    ONLINE    rac2       

ora....ry.acfs ora....fs.type ONLINE    ONLINE    rac1       

ora.scan1.vip  ora....ip.type ONLINE    ONLINE    rac1       

[root@rac1 app]#

 

    这里我们看到,每个节点上的gsd服务都是offiline这是因为在11gR2 RAC环境下,gsd服务默认是禁用,当然这并不影响数据库的使用。gsd服务是向后兼容而保留的。

要启动gsd服务,可以通过如下步骤来启动:

grid用户登录执行

srvctl enable nodeapps -g

srvctl start nodeapps -g

 

    另外oc4j服务也是offline,同样是因为oc4j服务默认是禁用的,要启动用oc4j服务,可以通过如下步骤来启动:

grid用户登录执行:

srvctl enable oc4j

srvctl start oc4j -v

[grid@rac1 ~]$ srvctl enable oc4j

[grid@rac1 ~]$ srvctl start oc4j -v

OC4J 已启动

[grid@rac1 ~]$

 

也可以在集群件中取消gsd服务的注册,在11g中命令crs_unregister已经废弃,使用crsctl delete resource命令替代

[grid@rac1 bin]$ crs_unregister -h

此命令已废弃并替换为 'crsctl delete resource'

保留此命令只是为了向后兼容

 

Usage:  crs_unregister resource_name [...] [-q]

[grid@rac1 bin]$ crsctl -h

用法: crsctl add       -添加资源,类型或其他实体

       crsctl check     - 检查服务, 资源或其他实体

       crsctl config    - 输出自动启动配置

       crsctl debug     - 获取或修改调试状态

       crsctl delete    - 删除资源, 类型或其他实体

       crsctl disable   - 禁用自动启动

       crsctl enable    - 启用自动启动

       crsctl get       - 获取实体值

       crsctl getperm   - 获取实体权限

       crsctl lsmodules - 列出调试模块

       crsctl modify    - 修改资源, 类型或其他实体

       crsctl query     - 查询服务状态

       crsctl pin       - 在节点列表中固定节点

       crsctl relocate  - 重新定位资源, 服务器或其他实体

       crsctl replace   - 替换表决文件的位置

       crsctl setperm   - 设置实体权限

       crsctl set       - 设置实体值

       crsctl start     - 启动资源, 服务器或其他实体

       crsctl status    - 获取资源或其他实体的状态

       crsctl stop      - 停止资源, 服务器或其他实体

       crsctl unpin     - 在节点列表中取消固定节点

       crsctl unset     - 取消设置实体值, 还原其默认值

[grid@rac1 bin]$

 

执行gsd服务删除

[grid@rac1 bin]$ crsctl delete resource ora.gsd

[grid@rac1 bin]$ crs_stat -t

名称           类型           目标     状态     主机       

------------------------------------------------------------

ora.DATA.dg    ora....up.type ONLINE    ONLINE    rac1       

ora....ER.lsnr ora....er.type ONLINE    ONLINE    rac1       

ora....N1.lsnr ora....er.type ONLINE    ONLINE    rac1       

ora.asm        ora.asm.type   ONLINE    ONLINE    rac1        

ora.eons       ora.eons.type  ONLINE    ONLINE    rac1       

ora....network ora....rk.type ONLINE    ONLINE    rac1       

ora.oc4j       ora.oc4j.type  ONLINE    ONLINE    rac2       

ora.ons        ora.ons.type   ONLINE    ONLINE    rac1       

ora.rac.db     ora....se.type ONLINE    ONLINE    rac1       

ora....SM1.asm application    ONLINE    ONLINE    rac1       

ora....C1.lsnr application    ONLINE    ONLINE    rac1       

ora.rac1.ons   application    ONLINE    ONLINE    rac1       

ora.rac1.vip   ora....t1.type ONLINE    ONLINE    rac1       

ora....SM2.asm application    ONLINE    ONLINE    rac2       

ora....C2.lsnr application    ONLINE    ONLINE    rac2       

ora.rac2.ons   application    ONLINE    ONLINE    rac2       

ora.rac2.vip   ora....t1.type ONLINE    ONLINE    rac2       

ora....ry.acfs ora....fs.type ONLINE    ONLINE    rac1       

ora.scan1.vip  ora....ip.type ONLINE    ONLINE    rac1       

[grid@rac1 bin]$

 

 

十一、数据库更改归档模式

11.1、创建归档目录

节点一:/u01/app/oracle/archive1

节点二:/u01/app/oracle/archive2

11.2、设置归档目录地址参数

先登录到任一节点,设置归档地址目录参数

 

 

SQL> alter system set log_archive_dest='/u01/app/oracle/archive1' scope=spfile sid='rac1';

 

系统已更改。

 

SQL> alter system set log_archive_dest='/u01/app/oracle/archive2' scope=spfile sid='rac2';

 

系统已更改。

 

SQL>

 

11.3、更改归档模式

先关闭所有节点,然后启动一个节点

SQL> shutdown immediate;

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL>

 

更改数据库归档模式

SQL> archive log list

数据库日志模式            非存档模式

自动存档            禁用

存档终点            /u01/app/oracle/archive1

最早的联机日志序列     1

当前日志序列           2

SQL>

SQL>

SQL> alter database archivelog ;

 

数据库已更改。

 

SQL> archive log list

数据库日志模式           存档模式

自动存档            启用

存档终点            /u01/app/oracle/archive1

最早的联机日志序列     1

下一个存档日志序列   2

当前日志序列           2

SQL>

 

打开数据库

SQL> alter database open;

 

数据库已更改。

 

SQL>

 

最后,连接到另一节点启动数据库

SQL> startup mount;

ORACLE 例程已经启动。

 

Total System Global Area 1636814848 bytes

Fixed Size                  2213856 bytes

Variable Size            1056966688 bytes

Database Buffers          570425344 bytes

Redo Buffers                7208960 bytes

数据库装载完毕。

SQL> archive log list;

数据库日志模式           存档模式

自动存档            启用

存档终点            /u01/app/oracle/archive2

最早的联机日志序列     1

下一个存档日志序列   1

当前日志序列           1

SQL>

SQL>

SQL> alter database open;

 

数据库已更改。

 

SQL>

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值