oracle grid 11g学习笔记-安装配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle grid 11g学习笔记-安装配置相关的知识,希望对你有一定的参考价值。

 

目录说明:

-安装准备

1.1 环境信息

1.2 需要安装依赖包

1.3 用户配置

1.4 存储安装配置

1.5 操作系统参数配置

1.6 环境变量配置

1.7 ssh信任配置

1.8 vnc配置

1.9 asm存储配置

-oracle软件安装

2.1 grid安装

2.2 oracle安装

2.3 asm磁盘划分

2.4 数据库实例安装

-安装问题

3.1 问题1

3.2 问题2

3.3 问题3

3.4 问题4

3.5 问题5

一 安装准备

当企业对于数据库要求比较高,或负载压力比较大的时候,就需要考虑oracle rac了,通过oracle rac可以保证sql负载均衡和服务器高可用,确保故障时间更低,运维有更多的时间解决问题。

1.1 环境信息

应用名称

node1

node2

名称

test-rac-node01

test-rac-node02

scan ip

cluster name test-ra-cluster

scan name: test-ra-cluster-scan

scan port 1521

test-ra-cluster-scan.localdomain 172.20.12.153/154/155

 

host

172.20.12.51 test-rac-node01 test-rac-node01.localdomain

192.168.100.51 test-rac-node01-priv test-rac-node01-priv.localdomain

172.20.12.52 test-rac-node02 test-rac-node02.localdomain

192.168.100.52 test-rac-node02-priv test-rac-node02-priv.localdomain

172.20.12.151 test-rac-node01-vip test-rac-node01-vip.localdomain

172.20.12.152 test-rac-node02-vip test-rac-node02-vip.localdomain

 

操作系统

CentOS release 6.6 (Final) 2.6.32-504.16.2.el6.x86_64

· Oracle Database 11G Release 2 (11.2.0.4.0)

· Oracle Grid Infrastructure 11G Release 2 (11.2.0.4.0)

 

oracle版本

Release 11.2.0.4.0

 

用户信息

groupadd -g 1000 oinstall

groupadd -g 1200 asmadmin

groupadd -g 1201 asmdba

groupadd -g 1202 asmoper

useradd -u 1100 -g oinstall -G asmadmin,asmdba,asmoper -d /home/grid -s /bin/bash -c "grid Infrastructure Owner" grid

groupadd -g 1300 dba

groupadd -g 1301 oper

useradd -u 1101 -g oinstall -G dba,oper,asmdba -d /home/oracle -s /bin/bash -c "Oracle Software Owner" oracle

 

硬盘配置

OCR: 2G 3块

REC: 10G 1块

DATA: 50G 2块

rac-test-ocr01

rac-test-ocr02

rac-test-ocr03

rac-test-rec01

rac-test-data01

rac-test-data02

 

1.2 需要安装的包:

yum install libcap-devel

yum install -y sysstat libstdc++-devel libaio-devel gcc-c++ compat-libstdc++-33 elfutils-libelf-devel smartmontools compat-libcap1 ksh nfs-utils

1.3 用户配置

按照上面表格创建oracle,grid用户

1.4 存储安装配置

使用的是iscsi,需要安装客户端:

yum install -y iscsi-initiator-utils

修改配置名称:

[[email protected] ~]# cat /etc/iscsi/initiatorname.iscsi

InitiatorName=iqn.2014-12.com.qingcloud.s2:sn.testrac01

[[email protected] ~]#

查找iscsi服务器

[[email protected] ~]# iscsiadm -m discovery -t st -p 172.20.12.120

Starting iscsid: [ OK ]

172.20.12.120:3260,1 iqn.2014-12.com.qingcloud.s2:sn.testrac01

[[email protected] ~]# iscsiadm -m node

172.20.12.120:3260,1 iqn.2014-12.com.qingcloud.s2:sn.testrac01

[[email protected] ~]#

登录到目标:

[[email protected] ~]# iscsiadm -m node -T iqn.2014-12.com.qingcloud.s2:sn.testrac01 -p 172.20.12.120 --login

Logging in to [iface: default, target: iqn.2014-12.com.qingcloud.s2:sn.testrac01, portal: 172.20.12.120,3260] (multiple)

Login to [iface: default, target: iqn.2014-12.com.qingcloud.s2:sn.testrac01, portal: 172.20.12.120,3260] successful.

查看到已经识别到硬盘了:

[[email protected] ~]# lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT

sdb 8:16 0 8G 0 disk [SWAP]

sda 8:0 0 20G 0 disk

└─sda1 8:1 0 20G 0 part /

sdd 8:48 0 50G 0 disk

sdf 8:80 0 10G 0 disk

sdc 8:32 0 10G 0 disk

sde 8:64 0 50G 0 disk

sdg 8:96 0 10G 0 disk

sdh 8:112 0 10G 0 disk

[[email protected] ~]#

配置自动登录:

[[email protected] ~]# iscsiadm -m node -T iqn.2014-12.com.qingcloud.s2:sn.testrac01 -p 172.20.12.120 --op update -n node.startup -v automatic

退出登录iscsi

iscsiadm -m node --logout

1.5 操作系统参数配置

编辑下面参数,根据实际情况修改

vi /etc/sysctl.conf

kernel.shmall = 4294967296

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

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

net.ipv4.tcp_wmem = 262144 262144 262144

net.ipv4.tcp_rmem = 4194304 4194304 4194304

使用sysctl -p,让参数生效

1.6 环境变量配置

oracle环境变量:

编辑/home/oracle/.bash_profile文件,增加下面参数(注意第二台节点的ORACLE_SID名称)

export PATH

export PS1="`/bin/hostname -s`-> "

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_HOSTNAME=node1.localdomain

export ORACLE_SID=cw1

export ORACLE_BASE=/home/oracle/app

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export ORACLE_UNQNAME=devdb

export TNS_ADMIN=$ORACLE_HOME/network/admin

export ORACLE_TERM=xterm

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

export EDITOR=vi

export LANG=en_US

export NLS_LANG=american_america.AL32UTF8

export NLS_DATE_FORMAT=‘yyyy/mm/dd hh24:mi:ss‘

umask 022

grid环境变量:

编辑/home/grid/.bash_profile文件,增加下面参数(注意第二台节点的ORACLE_SID名称)

export PATH

export PS1="`/bin/hostname -s`-> "

export TMP=/tmp/oracle/tmp

export TMPDIR=$TMP

export ORACLE_SID=+ASM1

export ORACLE_BASE=/home/grid/app

export ORACLE_HOME=/home/grid/app/11.2.0/grid

export ORACLE_TERM=xterm

export NLS_DATE_FORMAT=‘yyyy/mm/dd hh24:mi:ss‘

export TNS_ADMIN=$ORACLE_HOME/network/admin

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

export EDITOR=vi

export LANG=en_US

export NLS_LANG=american_america.AL32UTF8

umask 022

1.7 信任配置

oracle和grid 通过ssh,让节点1通过oracle/grid访问节点2无需要密码

下面用chenwei用户来演示:

用chenwei用户登录,输入命令:

[[email protected] ~]$ ssh-keygen -t rsa

Generating public/private rsa key pair.

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

Created directory ‘/home/chenwei/.ssh‘.

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /home/chenwei/.ssh/id_rsa.

Your public key has been saved in /home/chenwei/.ssh/id_rsa.pub.

The key fingerprint is:

3f:84:ff:91:6f:02:f4:09:b9:c0:0e:bf:42:e5:a5:74 [email protected]

The key‘s randomart image is:

+--[ RSA 2048]----+

| |

| |

| . . |

| . =.E |

| BS*.+ . |

| . =+o o. |

| . .+.o |

| . . o.o. |

| . .o. |

+-----------------+

[[email protected] ~

生产了id_rsa.pub和id_rsa,现在需要把id_rsa.pub里面的内容拷贝到节点2的/home/chenwei/.ssh/authorized_keys 即可。

反过来,节点2上也执行相应的操作。

验证是否成功,可以使用下面命令验证:

ssh node1 date

ssh node2 date

1.8 vnc配置

启动vnc并启用图形界面,需要安装下面包:

yum install tigervnc-server -y

yum groupinstall desktop -y

yum install xorg* -y

切换到grid/oracle用户下,输入vncserver命令,启动vnc,然后客户端通过vnc工具,输入grid/oracle用户密码登录,启动图形界面安装

1.9 asm存储配置

使用了udev管理磁盘,没有使用asmlib驱动,来管理。

udev,需要增加下面配置文件,根据实际情况情况,输入scsi_id

[[email protected] ~]# cat /etc/udev/rules.d/99-oracle-asmdevices.rules

KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="360014056af878a5333949b38ab667af0", NAME="asm-ocr-disk1", OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36001405b1f8e3ceeeda430ba9ade3f10", NAME="asm-ocr-disk2", OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="3600140597fdbce518744ed79ae307972", NAME="asm-data-disk3", OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36001405092a3f77399b482fa4e7a2b64", NAME="asm-data-disk4", OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36001405f14da57b227a4d5781fa1ecd1", NAME="asm-ocr-disk5", OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36001405cfa16bfe249b45b7be63e51e3", NAME="asm-rec-disk6", OWNER="grid", GROUP="asmadmin", MODE="0660"

[[email protected] ~]#

二 oracle软件安装

2.1 grid安装

上传安装包到服务器节点,解压,并切换用户grid

使用下面命令预先检查是否有问题,如果有问题,需要先修复。

test-rac-node01-> ./runcluvfy.sh stage -pre crsinst -n test-rac-node01,test-rac-node02 -fixup -verbose

确定没有问题,那么就通过vnc客户端工具,链接到grid用户的oui图形桌面,切换到grid安装介质目录,执行下面安装,启动图形界面

./runInstaller

技术分享

默认情况,根据实际情况点击下一步

根据之前规划的,输入scan name

技术分享

添加另外一个节点,正常情况下,/etc/hosts如果配置正确,这里是可以识别出来的。

技术分享

存储这个地方,需要修改下,修改为/dev/asm-*开头,要不然,识别不到磁盘

技术分享

根据之前规划的磁盘,选择相应的ocr盘,另外2块用于数据存储。

其中:

redundancy中的high,表示3块高可用存储

normal,表示2块高可用存储

external,表示没有冗余

技术分享

下面这里的群组一定要选择正确,否则后面有很多报奇怪的错误

技术分享

根据提示,修复选项

技术分享

最后安装完后,会需要执行下面脚本,需要注意的是,脚本需要一台一台执行,不要2台同时真行,执行脚本时间大约10分钟左右。

技术分享

最后,通过命令检查是否安装成功。

#crs_stat -t

2.2 oracle安装

安装完群集软件后,现在需要安装数据库软件,进入oracle用户,执行database/runInstaller,会出现下面图形界面,然后开始按照提示安装

首先,先选择安装软件,后面再创建

技术分享

安装企业版本

技术分享

选择安装目录:

技术分享

点击install,等待安装完成即可。

技术分享

1.3 asm磁盘划分

通过本地vnc,进入grid图形界面,输入asmca,进入asm图形界面,然后按照下面划分asm磁盘

技术分享

1.4 数据库安装

通过本地vnc,进入oracle图形界面,输入dbca,会出现图形界面,如下图:

技术分享

安装的时候,需要选择2台

技术分享

设置密码,所有管理员密码相同

技术分享

选择存储asm数据的存储空间

技术分享

最后,点击完成,即可开始安装。

技术分享

客户端验证:

oracle客户端中,配置本地tnsnames.ora文件,添加下面连接串,测试是否成功。

test155 =

(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = test-ra-cluster-scan.localdomain)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = cw)))

通过客户端工具,查看,发现已经连接到实例2上去了。

技术分享

三 安装问题

3.1 问题1:

[INS-06006] Passwordless SSH connectivity not set up between the following node(s): [test-rac-node01, test-rac-node02].

确保ssh互相可以通,然后点击setup,如果还是有报错,可以打开debug模式,根据具体细节,

开启debug模式安装

./runIxxxx -debug

技术分享

3.2 问题2:

查询不到节点:

技术分享

解决办法,找到下面文件,添加CRS=true参数。

<!-- Copyright (c) 1999, 2013, Oracle and/or its affiliates.

All rights reserved. -->

<!-- Do not modify the contents of this file by hand. -->

<INVENTORY>

<VERSION_INFO>

<SAVED_WITH>11.2.0.4.0</SAVED_WITH>

<MINIMUM_VER>2.1.0.6.0</MINIMUM_VER>

</VERSION_INFO>

<HOME_LIST>

<HOME NAME="Ora11g_gridinfrahome1" LOC="/home/grid/app/11.2.0/grid" TYPE="O" IDX="1" CRS="true">

<NODE_LIST>

<NODE NAME="test-rac-node02"/>

<NODE NAME="test-rac-node01"/>

</NODE_LIST>

</HOME>

</HOME_LIST>

<COMPOSITEHOME_LIST>

</COMPOSITEHOME_LIST>

</INVENTORY>

3.3 问题3:

安装数据库的时候,点击下一步,发现报错如下:

技术分享

解决方法:

default listener listener is not configured in grid infrastructure home

test-rac-node01-> srvctl add listener

test-rac-node01-> srvctl status listener

Listener LISTENER is enabled

Listener LISTENER is not running

test-rac-node01-> srvctl start listener

test-rac-node01-> srvctl status listener

Listener LISTENER is enabled

Listener LISTENER is running on node(s): test-rac-node02,test-rac-node01

test-rac-node01->

3.4 问题4:

安装数据库的时候,选择了asm安装,点击下一步的时候,包asm用户或密码不正确,如下图

can not use asm for database storage due to flollowing reason:

ora-01017:invalid username/password

技术分享

解决办法:

检查oracle,grid用户组信息,确保下面组都已经加入:

修复:

usermod -G osmadmin oracle

3.5 问题5:

安装数据库,最后一步,点击完成的时候,发现如下错误:

<msg time=‘2017-08-18T10:11:23.029+08:00‘ org_id=‘oracle‘ comp_id=‘tnslsnr‘

type=‘UNKNOWN‘ level=‘16‘ host_id=‘test-rac-node02‘

host_addr=‘172.20.12.52‘>

<txt>TNS-12518: TNS:listener could not hand off client connection

TNS-12546: TNS:permission denied

TNS-12560: TNS:protocol adapter error

TNS-00516: Permission denied

Linux Error: 13: Permission denied

</txt>

</msg>

解决方法:

如果创建了oracle账号,其它组权限是无法访问的,我创建oracle,grid都再/home下,所以产生了这个问题,添加相应权限即可。

另外,需要确保,如果不是这个权限,监听就会出问题,会提示: Linux Error: 13: Permission denied 或

test-rac-node02-> ls -l /home/grid/app/11.2.0/grid/bin/oracle

-rwsr-s--x 1 grid oinstall 209914519 Aug 16 22:23 /home/grid/app/11.2.0/grid/bin/oracle

test-rac-node02->

以上是关于oracle grid 11g学习笔记-安装配置的主要内容,如果未能解决你的问题,请参考以下文章

oracle 11g r2 grid是干啥的

oracle 11g grid安装

oracle 11g grid软件安装[20180121]

oracle 11g rac一节点操作系统重新安装后,重新加入到集群中,需要安装grid和oracle软件吗?

Oracle11g客户端安装配置

oracle 11g rac安装之grid报错解决