奕新集团RAC 11g 生产库环境(待完善无图)
1、硬件规划:
CPU 8个
内存 8G
网卡 2张
硬盘 1个90G机内盘 8个存储盘
分区:boot 200M
swap 8G
LVM
/ 70G VG
/opt 10G VG
2、数据库规划:
数据库版本 ORACLE 11gR2 11.2.0.3 - 64
3、操作系统规划:
操作系统 红帽 5.4-64
4、存储规划:
大 小 432G = 6块2G + 2块200G+1块20G
决策盘、仲裁盘 OCRVOTING 2G*2
闪回区 FRA 2G*2
数据盘 DATA 200G*2
ACFS 集群文件系统放在存储上
管理存储方式 Udev绑定设备名(舍弃ASMLib方式)
注意: 11g中决策盘和仲裁盘在中是一样的,10g决策和仲裁盘必须分开
5、网络(IP地址)规划:
节点一
主句名 m1
公网 172.16.15.101/23 用户访问
虚拟网 172.16.15.86/23 失败转移 负载均衡
私网 10.11.11.1/29 心跳线
scan网 172.16.15.100/23 CS虚拟层网络
节点二
主句名 m2
公网 172.16.15.102/23
虚拟网 172.16.15.87/23
私网 10.11.11.2/29
scan网 172.16.15.100/23
节点三
主句名 m3
公网 172.16.15.103/23
虚拟网 172.16.15.88/23
私网 10.11.11.3/29
scan网 172.16.15.100/23
注意: 上面只是满足搭建一个RAC的需求。
目的数据同步:
6、数据同步技术:GoldenGate
GG版本: GG 11g—64
方向: 单实例指向RAC单向同步。
同步对象:表(对象下的表)
集群文件系统 ACFS(或DBFS)
在OS部署-------------》RAC上--------------------》部署GG
2个节点:
1、操作系统规划:
rhel 5.4 64
2、数据库规划:
oracle 64 11gR2 11.2.3
3、IP地址规划 172.16.14.140/23
172.16.14.142/23
网关 172.16.14.1
4、存储规划:
1块机内盘 50G
5、硬件规划:
CPU 4核 内存8G 1块网卡 1块机内盘
6、GG软件版本 11g 64位
7、集群文件系统 ACFS
怎样实施:
首先准备硬件,然后安装操作系统,关闭防火墙 Selinux 修改hosts,配置YUM源,修改系统内核参数、增加用户组、添加磁盘,...(为安装数据库做准备),准备GI软件,安装GI,安装ASM,安装数据库软件,安装数据库实例,,,,,好了,准备GG软件,搭建ACFS(DBFS)文件系统,搭建GG,最后测试数据同步。
开始配置
软件包:(推荐yum源)
binutils-2.17.50.0.6 --------这个是配置DNS服务器使用(鉴于公司的局域网--没有做)
compat-libstdc++-
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-2.5-24
glibc-common-2.5
glibc-devel-2.5
glibc-devel-2.5
glibc-headers-2.5
libaio-0.3.106
libaio-0.3.106
libaio-devel-0.3.106
libgcc-4.1.2
libstdc++-4.1.2
libstdc++-devel 4.1.2
make-3.81
sysstat-7.0.2
unixODBC-2.2.11
unixODBC-devel-2.2.11
假如安装不上unixODBC
那么安装 unixODBC64*
oracleasm-2.6.16.60-0.21-bigsmp-2.0.4-1.
oracleasm-support-2.1.3-1
oracleasmlib-2.0.4-1
顺便安装 oacleasmlib*
没有需要上传
rpm -ivh oracleasmlib*
驱动
一、配置网络
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)
DEVICE=eth0
BOOTPROTO=none
BROADCAST=172.16.15.255
HWADDR=00:50:56:a8:7f:ac
IPADDR=172.16.15.101
IPV6INIT=yes
IPV6_AUTOCONF=yes
NETMASK=255.255.254.0
NETWORK=172.16.14.0
ONBOOT=yes
HOTPLUG=yes
GATEWAY=172.16.14.1
TYPE=Ethernet
重启服务
/etc/init.d/network restart
hostname m1
vim /etc/hosts
#public network
172.16.15.101 m1
172.16.15.102 m2
172.16.15.103 m3
#private network
10.11.11.1 m1-priv
10.11.11.2 m2-priv
10.11.11.3 m3-priv
#VIP network
172.16.15.104 m1-vip
172.16.15.105 m2-vip
172.16.15.106 m3-vip
#racscan network
172.16.15.100 rac-scan
1、配置yum 源
虚拟机上挂载 ISO镜像
root用户:
mkdir /mnt/cdrom
mkdir /mnt/iso
mount /dev/cdrom /mnt/cdrom
cp -Rf /mnt/cdrom/* /mnt/iso
2、cp /etc/yum.repo.d/redhat-el5.repo /etc/yum.repo.d/local.repo
3、vim /etc/yum.repo.d/local.repo 清空--添加如下
[Cluster]
name=Cluster
baseurl=file:/mnt/iso/Cluster
enabled=1
gpgcheck=0
gpgkey=file:/mnt/iso/RPM-GPG-KEY-oracle
[VT]
name=VT
baseurl=file:/mnt/iso/VT
enabled=1
gpgcheck=0
gpgkey=file:/mnt/iso/RPM-GPG-KEY-oracle
[ClusterStorage]
name=ClusterStorage
baseurl=file:/mnt/iso/ClusterStorage
enabled=1
gpgcheck=0
gpgkey=file:/mnt/iso/RPM-GPG-KEY-oracle
[Server]
name=Server
baseurl=file:/mnt/iso/Server
enabled=1
gpgcheck=0
gpgkey=file:/mnt/iso/RPM-GPG-KEY-oracle
2、修改内核参数
# Controls the maximum size of a message, in bytes
kernel.msgmnb = 65536
# Controls the default maxmimum size of a mesage queue
kernel.msgmax = 65536
# Controls the maximum shared segment size, in bytes
kernel.shmmax = 68719476736
# Controls the maximum number of shared memory segments, in pages
kernel.shmall = 4294967296
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmni = 4096
kernel.shmall = 4294967296
kernel.sem = 1250 640000 1250 512
fs.file-max = 6815744
fs.aio-max-nr = 6815744
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 4194304
net.core.wmem_max = 4194304
kernel.shmmni = 4096
生效:
sysctl -p
3、修改开文件数的限制
vim /etc/security/limits.conf
grid soft nproc 8188
grid hard nproc 65536
grid soft nofile 4096
grid hard nofile 262144
oracle soft nproc 8188
oracle hard nproc 65536
oracle soft nofile 4096
oracle hard nofile 262144
4、修改login文件
vim /etc/pam.d/login
sessionrequiredpam_limits.so
5、创建grid oracle用户
groupadd -g 501 oinstall
groupadd -g 502 dba
groupadd -g 503 oper
groupadd -g 504 asmadmin
groupadd -g 505 asmoper
groupadd -g 506 asmdba
useradd -g oinstall -G dba,asmdba,oper oracle
useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
passwd grid
passwd oracle
6 修改用户环境变量
oracle用户:
vim /home/oracle/.bash_profile
grid用户:
vim /home/grid/.bash_profile
建立目录:
mkdir -p /oracle/ grid
chown -R grid:oinstall /oracle
mkdir /oracle/db
chown oracle:oinstall /oracle/db
mkdir /oracle/crs
chown oracle:oinstall /oracle/crs
chmod -R 775 /oracle
7 网格grid产品安装到 /oracle/grid
数据库oracle软件安装到/opt/oracle
维护的磁盘在共享存储中 dbca建立的数据库位置放在存储设备上。
xhost + 都必须正确 任何一台都不能出错
第一台:
14203
第二台 :
主机的存储(意思是系统放在那里)
机内盘
第三台
8 配置存储
这里我遇到问题了
1 Udev方式(推荐)
参见:http://www.oracledatabase12g.com/archives/why-asmlib-and-why-not.html
2 ASMLib 方式
3 裸设备
第一步 编辑虚拟机
第二步 点击添加 出现下面的画面
第三步 点击硬盘 点击 下一步
第四步 选择 使用现有的磁盘
第五步骤
第六步骤
第七步骤
第八步
第九步 选着
第 十步骤
第 11 步骤 查看信息
第十二步骤 接着添加 第二块 CRS 2 盘了 操作步骤是一样的 要仔细看上面我的操作步骤 下面的我截图 只是 截你自己需要注意的或者容易出错的
接着:
添加第三块盘
添加第四个
点击 确定
注意 :
选择一下 这个 物理共享
m2 开始:
步骤一样的 但是选择需要注意 我会截图的
注意 不要选这个 存储是共用的 还是选择m1.db 当时 是呀 m1建立的存储
报错
解决办法:
重新启动一下 m2.db m3.db 然后重新添加 没得事 以硬件的方式添加照样没得错。
或者关闭m1.db 主机 原因不详。
我之前出现一个错误:发现不了磁盘
配置了ASMLib 绑定了ASM磁盘组
配置了Udev 邦定了Udev
配置了RAW裸设备绑定了裸设备
RAC看图不说话 是基于Linux 6平台的只能参考不能
测试:
只是配置udev
绑定裸设备
vim /etc/udev/rules.d/60-raw.rules
添加
ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", KERNEL=="sdc1", RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add", KERNEL=="sdd1", RUN+="/bin/raw /dev/raw/raw3 %N"
ACTION=="add", KERNEL=="sde1", RUN+="/bin/raw /dev/raw/raw4 %N"
ACTION=="add", KERNEL=="sdf1", RUN+="/bin/raw /dev/raw/raw5 %N"
KERNEL=="raw1", OWNER="grid", GROUP="oinstall", MODE="660"
KERNEL=="raw2", OWNER="grid", GROUP="oinstall", MODE="660"
KERNEL=="raw3", OWNER="grid", GROUP="oinstall", MODE="660"
KERNEL=="raw4", OWNER="grid", GROUP="oinstall", MODE="660"
KERNEL=="raw5", OWNER="grid", GROUP="oinstall", MODE="660"
start_udev
ls /dev/raw
[root@m1 ~]# ls /dev/raw/ -l
crw-rw---- 1 grid oinstall 162, 1 Oct 8 03:33 raw1
crw-rw---- 1 grid oinstall 162, 2 Oct 8 03:33 raw2
crw-rw---- 1 grid oinstall 162, 3 Oct 8 03:33 raw3
crw-rw---- 1 grid oinstall 162, 4 Oct 8 03:33 raw4
crw-rw---- 1 grid oinstall 162, 5 Oct 8 03:33 raw5
加入你用 ll –ls /dev/sd*
[root@m1 ~]# ls -l /dev/sd*
brw-r----- 1 root disk 8, 0 Oct 11 2013 /dev/sda
brw-r----- 1 root disk 8, 1 Oct 11 09:23 /dev/sda1
brw-r----- 1 root disk 8, 2 Oct 11 2013 /dev/sda2
brw-r----- 1 root disk 8, 16 Oct 11 2013 /dev/sdb
brw-r----- 1 root disk 8, 17 Oct 11 2013 /dev/sdb1
brw-r----- 1 root disk 8, 32 Oct 11 2013 /dev/sdc
brw-r----- 1 root disk 8, 33 Oct 11 2013 /dev/sdc1
brw-r----- 1 root disk 8, 48 Oct 11 2013 /dev/sdd
brw-r----- 1 root disk 8, 49 Oct 11 2013 /dev/sdd1
brw-r----- 1 root disk 8, 64 Oct 11 2013 /dev/sde
brw-r----- 1 root disk 8, 65 Oct 11 2013 /dev/sde1
brw-r----- 1 root disk 8, 80 Oct 11 2013 /dev/sdf
brw-r----- 1 root disk 8, 81 Oct 11 2013 /dev/sdf1
看到的是 root disk 所以 因为是root 用户
所以之前 我遇到的那个问题就可以解决了。
磁盘规划:
磁盘的划分后,两节点都能看到,能正确读写。
在其中一节点上运行fdisk -l划分以下分区
/dev/sda1 15G是基类硬盘存放操作系统
/dev/sda2 63G是基类硬盘
/dev/sdb1 1G存放CRS 仲裁盘 决策盘
/dev/sdf1 1G存放CRS
/dev/sdd1 200G 存放数据 数据盘
/dev/sde1 200G 存放数据
----/dev/sdd5 50G存放recover-----
----/dev/sdd6 50G存放flash-----
5、ARCH
1.确认在所有RAC节点上已经安装了必要的UDEV包
[root@rh2 ~]# rpm -qa|grep udev
udev-095-14.21.el5
2.通过scsi_id获取设备的块设备的唯一标识名,假设系统上已有LUN sdc-sdp
for i in b c d e f g ;
do
echo "sd$i" "`scsi_id -g -u -s /block/sd$i` ";
done
sdb 36000c29a89de45f738ab0cfa02b9c79e
sdc 36000c295cfaf6508afb7635d7d212ea4
sdd 36000c2968c0330c628277dd9d434b227
sde 36000c29b24374ca1e1d72fb7cc4eeaeb
sdf 36000c29e6a3d2a6368deeaf7d0cd971b
sdg 36000c290212ef972a444f1036210823b
以上列出于块设备名对应的唯一标识名
3.创建必要的UDEV配置文件,
首先切换到配置文件目录
[root@rh2 ~]# cd /etc/udev/rules.d
定义必要的规则配置文件
[root@rh2 rules.d]# touch 99-oracle-asmdevices.rules
[root@rh2 rules.d]# cat 99-oracle-asmdevices.rules
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="36000c29a89de45f738ab0cfa02b9c79e", NAME="ocr1", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="36000c295cfaf6508afb7635d7d212ea4", NAME="ocr2", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="36000c2968c0330c628277dd9d434b227", NAME="asm-disk1", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="36000c29b24374ca1e1d72fb7cc4eeaeb", NAME="asm-disk2", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="36000c29e6a3d2a6368deeaf7d0cd971b", NAME="asm-disk3", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="36000c290212ef972a444f1036210823b", NAME="asm-disk4", OWNER="grid", GROUP="asmadmin", MODE="0660"
Result 为/sbin/scsi_id -g -u -s %p的输出--Match the returned string of the last PROGRAM call. This key may be
used in any following rule after a PROGRAM call.
按顺序填入刚才获取的唯一标识名即可
OWNER为安装Grid Infrastructure的用户,在11gr2中一般为grid,GROUP为asmadmin
MODE采用0660即可
NAME为UDEV映射后的设备名,
建议为OCR和VOTE DISK创建独立的DISKGROUP,为了容易区分将该DISKGROUP专用的设备命名为ocr1..ocrn的形式
其余磁盘可以根据其实际用途或磁盘组名来命名
4.将该规则文件拷贝到其他节点上
[root@rh2 rules.d]# scp 99-oracle-asmdevices.rules Other_node:/etc/udev/rules.d
5.在所有节点上启动udev服务,或者重启服务器即可
[root@rh2 rules.d]# /sbin/udevcontrol reload_rules
[root@rh2 rules.d]# /sbin/start_udev
Starting udev: [ OK ]
6.检查设备是否到位
[root@rh2 rules.d]# cd /dev
[root@rh2 dev]# ls -l ocr*
brw-rw---- 1 grid asmadmin 8, 32 Jul 10 17:31 ocr1
brw-rw---- 1 grid asmadmin 8, 48 Jul 10 17:31 ocr2
[root@rh2 dev]# ls -l asm-disk*
[root@m1 dev]# ls -l asm-disk*
brw-rw---- 1 grid asmadmin 8, 48 Oct 18 13:47 asm-disk1
brw-rw---- 1 grid asmadmin 8, 64 Oct 18 13:47 asm-disk2
brw-rw---- 1 grid asmadmin 8, 80 Oct 18 13:47 asm-disk3
brw-rw---- 1 grid asmadmin 8, 96 Oct 18 13:47 asm-disk4
整死弄不出来
1、 /home/grid/run/grid/runInstaller ------不行发现不了磁盘
2、 cd /home/grid/run/grid/
3、 ./runInstaller --------不行 发现不了磁盘
解决:
新建了4块2G的硬件
新建了2块200G硬件
建立了一个udev(上面有记录)---推荐
如果你想用ASMlib也行 上面有步骤 11gr2 不支持raw裸设备(最好不用)
最重要的是 换了一个grid 933M的软件
grid用户下(一定是grid用户)
1、mkdir aa
2、Ftp工具上传到aa目录下
3、unzip p10404530_112030_Linux-x86-64_3of7
4、cd grid/
5、./runInstaller
6、好了
什么原因?
可能是配置文件。
5、 验证nobody 用户
--在所有节点上验证用户 nobody 存在:
安装软件之前,执行以下过程,以验证在两个 Oracle RAC 节点上存在用户 nobody,要确定该用
户是否存在,输入以下命令:
# id nobody
uid=99(nobody) gid=99(nobody) groups=99(nobody)
如果该命令显示了 nobody 用户的信息,则无需创建该用户。如果用户 nobody 不存在,则输入以下
命令进行创建:
# /usr/sbin/useradd nobody
2.2 禁用防火墙和 SELNUX(所有节点)
关闭防火墙:
service iptables status
service iptables stop
chkconfig iptables off
chkconfig iptables --list
设置/etc/selinux/config 文件,将 SELINUX 设置为 disabled。
[root@rac1 ~]# cat /etc/selinux/config
# 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
2.3 配置时间同步(所有节点)
方法一
在 11gR2 中,RAC 在安装的时候,时间同步可以用两种方式来实现:
NTP
CTSS。
当安装程序发现 NTP 协议处于非活动状态时,安装集群时间同步服务将以活动模式自动进行安装并
通 过所 有节 点的时 间。 如果 发现配 置了 NTP,则以 观察 者模 式启动 集群 时间同 步服 务, Oracle Dave 高级 DBA 培训班内部文档 * 严禁外传 Blog: http://blog.csdn.net/tianlesoftware
Clusterware 不会在集群中进行活动的时间同步。
Oracle 集群时间同步服务 (ctssd) 旨在为那些 Oracle RAC 数据库无法访问 NTP 服务的组
织提供服务。
这里我们使用 CTSS.
--配置 CTSS
使用集群时间同步服务在集群中提供同步服务,需要卸载网络时间协议 (NTP) 及其配置。
要停用 NTP 服务,必须停止当前的 ntpd 服务,从初始化序列中禁用该服务,并删
除 ntp.conf 文件。
要在 Linux 上完成这些步骤,以 root 用户身份在两个 Oracle RAC 节点上运行以下命令:
[root@rac1 ~]# /sbin/service ntpd stop
Shutting down ntpd: [ OK ]
[root@rac1 ~]# chkconfig ntpd off
[root@rac1 ~]# mv /etc/ntp.conf /etc/ntp.conf.original
[root@rac1 ~]# chkconfig ntpd --list
ntpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@rac2 ~]# /sbin/service ntpd stop
Shutting down ntpd: [ OK ]
[root@rac2 ~]# chkconfig ntpd off
[root@rac2 ~]# mv /etc/ntp.conf /etc/ntp.conf.original
[root@rac2 ~]# chkconfig ntpd --list
ntpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
还要删除以下文件:
rm /var/run/ntpd.pid
此文件保存了 NTP 后台程序的 pid。
在安装后,要确认 ctssd 处于活动状态,用 grid 所有者输入以下命令:
[grid@racnode1 ~]$ crsctl check ctss
CRS-4701: The Cluster Time Synchronization Service is in Active mode.
CRS-4702: Offset (in msec): 0
4、配置SSH等效性
分别以grid oracle 建立2次
grid 用户
su - grid
m1:/home/grid$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/grid/.ssh/id_rsa):
Created directory '/home/grid/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/grid/.ssh/id_rsa.
Your public key has been saved in /home/grid/.ssh/id_rsa.pub.
The key fingerprint is:
60:9b:fe:65:82:85:44:8d:20:a3:a5:16:54:21:11:72 grid@m1
m1:/home/grid$
公网:
m1:/home/grid$ echo ~
/home/grid
是公钥
下面讲公钥拷贝到3台机器: m1 m2 m3
m1:/home/grid$ ssh-copy-id -i /home/grid/.ssh/id_rsa.pub m1
26 ID
The authenticity of host 'm1 (172.16.15.101)' can't be established.
RSA key fingerprint is 94:cd:c2:8b:08:75:c4:e0:b6:9a:be:93:1b:7e:68:51.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'm1,172.16.15.101' (RSA) to the list of known hosts.
grid@m1's password:
Now try logging into the machine, with "ssh 'm1'", and check in:
.ssh/authorized_keys -------------
to make sure we haven't added extra keys that you weren't expecting.
-----------------------------------说明攻了了
m1:/home/grid$ssh-copy-id -i /home/grid/.ssh/id_rsa.pub m2
26
The authenticity of host 'm2 (172.16.15.102)' can't be established.
RSA key fingerprint is 94:cd:c2:8b:08:75:c4:e0:b6:9a:be:93:1b:7e:68:51.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'm2,172.16.15.102' (RSA) to the list of known hosts.
grid@m2's password:
Now try logging into the machine, with "ssh 'm2'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
m1:/home/grid$ssh-copy-id -i /home/grid/.ssh/id_rsa.pub m3
26
The authenticity of host 'm3 (172.16.15.103)' can't be established.
RSA key fingerprint is 94:cd:c2:8b:08:75:c4:e0:b6:9a:be:93:1b:7e:68:51.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'm3,172.16.15.103' (RSA) to the list of known hosts.
grid@m3's password:
Now try logging into the machine, with "ssh 'm3'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
私网
m1:/home/grid$ssh-copy-id -i /home/grid/.ssh/id_rsa.pub m1-priv
26
The authenticity of host 'm1-priv (10.11.11.1)' can't be established.
RSA key fingerprint is 94:cd:c2:8b:08:75:c4:e0:b6:9a:be:93:1b:7e:68:51.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'm1-priv,10.11.11.1' (RSA) to the list of known hosts.
Now try logging into the machine, with "ssh 'm1-priv'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
m1:/home/grid$ssh-copy-id -i /home/grid/.ssh/id_rsa.pub m2-priv
26
The authenticity of host 'm2-priv (10.11.11.2)' can't be established.
RSA key fingerprint is 94:cd:c2:8b:08:75:c4:e0:b6:9a:be:93:1b:7e:68:51.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'm2-priv,10.11.11.2' (RSA) to the list of known hosts.
Now try logging into the machine, with "ssh 'm2-priv'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
m1:/home/grid$ssh-copy-id -i /home/grid/.ssh/id_rsa.pub m3-priv
26
The authenticity of host 'm3-priv (10.11.11.3)' can't be established.
RSA key fingerprint is 94:cd:c2:8b:08:75:c4:e0:b6:9a:be:93:1b:7e:68:51.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'm3-priv,10.11.11.3' (RSA) to the list of known hosts.
Now try logging into the machine, with "ssh 'm3-priv'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
测试
m1:/home/grid$ssh m1 date;ssh m2 date; ssh m3 date
Thu Oct 10 11:50:50 CST 2013
Thu Oct 10 11:50:50 CST 2013
Thu Oct 10 11:50:50 CST 2013
m1:/home/grid$ssh m1-priv date;ssh m2-priv date; ssh m3-priv date
Thu Oct 10 11:57:40 CST 2013
Thu Oct 10 11:57:40 CST 2013
Thu Oct 10 11:57:40 CST 2013
这个不能拷贝只能 每台都建立
oracle 用户 我就粘贴了 一样的。
这样还没有配置完美
1)SSH会有一个LoginGraceTime的概念,是指ssh登录到对端,不做任何操作的时间,如果超过该时间,则自动断开ssh连接。那么在oracle安装的过程中,需要把该参数设置为“0”,也就是说,不让该功能生效。以免在安装的过程中出错。
用root修改/etc/ssh/sshd_config文件,找到LoginGraceTime字样:
LoginGraceTime 0
#PermitRootLogin yes
#StrictModes yes
将前面的“#”去掉,后面的数字设置为“0”即可。
安装Grid软件:
1、 准备 软件包
oracle官网上有下载
p10404530_112030_Linux-x86-64_1of7
p10404530_112030_Linux-x86-64_2of7
p10404530_112030_Linux-x86-64_3of7 -----grid软件
FTP工具上传到一台主机上就可以了。我上传到m1
上传grid 1 分 oracle软件2分
M1 上
mkdir /tmp/soft
unzip /tmp/soft/ p10404530_112030_Linux-x86-64_3of7
安装cvuqdisk包并验证
在两个 Oracle RAC 节点上安装操作系统程序包 cvuqdisk。如果没有
cvuqdisk,集群验证实用程序就无法发现共享磁盘,当运行(手动运行或在 Oracle Grid
Infrastructure 安装结束时自动运行)集群验证实用程序时,您会收到这样的错误消息:“Package
cvuqdisk not installed”。使用适用于您的硬件体系结构(例如,x86_64 或 i386)的 cvuqdisk RPM。
检查这个包在不:
m1:/home/grid$ls /tmp/soft/grid/rpm/cvuqdisk-1.0.9-1.rpm
/tmp/soft/grid/rpm/cvuqdisk-1.0.9-1.rpm
需要将这个包 拷贝到m2 m3上因为是以便发现磁盘。
看见没有不能使用grid用户安装rpm
m1:/home/grid$rpm -ivh /tmp/soft/grid/rpm/cvuqdisk-1.0.9-1.rpm
error: can't create transaction lock on /var/lib/rpm/__db.000
root用户
需要拷贝这个
m1:/home/grid$scp /tmp/soft/grid/rpm/cvuqdisk-1.0.9-1.rpm m2:/tmp/
cvuqdisk-1.0.9-1.rpm 100% 8551 8.4KB/s 00:00
m1:/home/grid$scp /tmp/soft/grid/rpm/cvuqdisk-1.0.9-1.rpm m3:/tmp/
cvuqdisk-1.0.9-1.rpm 100% 8551 8.4KB/s 00:00
m1:/home/grid$
m2 m3 上都需要(一定要安装啊)
[root@m3 ~]# rpm -ivh /tmp/cvuqdisk-1.0.9-1.rpm
Preparing... ########################################### [100%]
Using default group oinstall to install package
1:cvuqdisk ########################################### [100%]
实行安装检查(非常重要)
我们这里只有DNS没有通过其他的一定要通过。
/tmp/soft/grid/runcluvfy.sh stage –list 查看检查的语法
这句话很重要 建议 记录日志
m1:/home/grid$/tmp/soft/grid/runcluvfy.sh stage -pre crsinst -n m1,m2,m3 -fixup –verbose
环境检查报错
ERROR:
The location "/tmp/CVU_11.2.0.3.0_grid/" is owned by another user on nodes:
m3,m2,m1
Please choose a different work area using CV_DESTLOC
Verification cannot proceed
Pre-check for cluster services setup was unsuccessful on all the nodes.
m1:/tmp/soft/grid$ll
解决:
第一种
以grid用户解压 但是 我没有执行成功
第二种
[root@m1 soft]# ll -l /tmp/soft/
total 3401632
drwxr-xr-x 8 root root 4096 Sep 22 2011 grid
root用户授权
chown -R oracle.oinstall /tmp/soft/
[root@m1 ~]# ll -l /tmp/
total 66192
drwxr-xr-x 3 500 500 4096 Sep 30 06:23 CVU_11.2.0.3.0_grid
drwx------ 2 root root 4096 Oct 10 15:25 gconfd-root
drwxr-xr-x 2 grid oinstall 4096 Oct 14 10:18 hsperfdata_grid
drwx------ 2 root root 4096 Sep 30 02:41 keyring-Q5slL2
drwxr-xr-x 2 500 500 4096 Sep 30 06:23 logs
srwxr-xr-x 1 root root 0 Oct 9 16:57 mapping-root
-rw-r--r-- 1 root root 14176 Oct 9 05:49 oracleasmlib-2.0.4-1.el5.x86_64.rpm
drwxr-xr-x 3 oracle oinstall 4096 Oct 14 09:45 soft
-rw-r--r-- 1 root root 1849173 Oct 9 05:50 unixODBC-2.3.2.tar.gz
drwx------ 2 root root 4096 Sep 30 02:41 virtual-root.aoRYQn
drwxr-xr-x 2 root root 4096 Oct 9 05:55 vmware-config0
drwx------ 2 root root 4096 Oct 13 19:11 vmware-root
-r--r--r-- 1 root root 65792741 Oct 9 01:36 VMwareTools-9.0.0-782409.tar.gz
drwxr-xr-x 7 root root 4096 Jul 15 2012 vmware-tools-distrib
[root@m1 ~]# chown -R grid.oinstall /tmp/CVU_11.2.0.3.0_grid
chown -R grid.oinstall /tmp/logs
看见上面的500 没有 chown 改成 grid.oinstall 就可以了
哈哈 有出错了 这个机器上m1 上检查通过 m2 m3 同样要改哈
[root@m2 ~]# chown -R grid.oinstall /tmp/CVU_11.2.0.3.0_grid/
[root@m2 ~]# chown -R grid.oinstall /tmp/logs/
再次执行环境检查
错误:
ERROR:
以下节点上的位置 "/tmp/CVU_11.2.0.3.0_grid/" 为其他用户所拥有:
m3,m2
[root@m2 ~]# ll /tmp/
total 64384
drwxr-xr-x 3 oracle oinstall 4096 Sep 30 06:23 CVU_11.2.0.3.0_grid
-rwxr-xr-x 1 grid oinstall 8551 Oct 14 10:05 cvuqdisk-1.0.9-1.rpm
drwx------ 2 root root 4096 Oct 11 09:16 gconfd-root
drwx------ 2 root root 4096 Sep 30 02:41 keyring-Q5slL2
drwxr-xr-x 2 oracle oinstall 4096 Sep 30 06:23 logs
srwxr-xr-x 1 root root 0 Oct 9 08:19 mapping-root
-rw-r--r-- 1 root root 14176 Oct 10 02:04 oracleasmlib-2.0.4-1.el5.x86_64.rpm
srw------- 1 root root 0 Oct 9 08:19 scim-panel-socket:0-root
drwx------ 2 root root 4096 Sep 30 02:41 virtual-root.aoRYQn
drwxr-xr-x 2 root root 4096 Oct 10 02:10 vmware-config0
drwx------ 2 root root 4096 Oct 11 09:26 vmware-root
-r--r--r-- 1 root root 65792741 Oct 10 01:49 VMwareTools-9.0.0-782409.tar.gz
drwxr-xr-x 7 root root 4096 Jul 15 2012 vmware-tools-distrib
[root@m2 ~]#
哈哈 环境检查的强大了吧 呵呵
logout
[root@m1 soft]# chown -R grid.oinstall /tmp/CVU_11.2.0.3.0_grid/
[root@m1 soft]# chown -R grid.oinstall /tmp/soft/
[root@m1 soft]# chown -R grid.oinstall /tmp/logs
[root@m1 soft]# ll /tmp/logs/
环境检查文件
[root@m1 soft]# LANG=zh_CN
[root@m1 soft]# su - grid
m1:/home/grid$LANG=zh_CN
m1:/home/grid$/tmp/soft/grid/runcluvfy.sh stage -pre crsinst -n m1,m2,m3 -fixup -verbose
执行 集群服务设置 的预检查
正在检查节点的可访问性...
检查: 节点 "m1" 的节点可访问性
目标节点 是否可访问?
------------------------------------ ------------------------
m3 是
m2 是
m1 是
结果:节点 "m1" 的节点可访问性检查已通过
正在检查等同用户...
检查: 用户 "grid" 的等同用户
节点名 状态
------------------------------------ ------------------------
m3 通过
m2 通过
m1 通过
结果:用户 "grid" 的等同用户检查已通过
正在检查节点连接性...
正在检查主机配置文件...
节点名 状态
------------------------------------ ------------------------
m3 通过
m2 通过
m1 通过
主机配置文件的验证成功
节点 "m3" 的接口信息
名称 IP 地址 子网 网关 默认网关 HW 地址 MTU
------ --------------- --------------- --------------- --------------- ----------------- ------
eth0 172.16.15.103 172.16.14.0 0.0.0.0 172.16.14.1 00:50:56:A8:5F:82 1500
eth1 10.11.11.3 10.11.11.0 0.0.0.0 172.16.14.1 00:50:56:A8:37:C7 1500
节点 "m2" 的接口信息
名称 IP 地址 子网 网关 默认网关 HW 地址 MTU
------ --------------- --------------- --------------- --------------- ----------------- ------
eth0 172.16.15.102 172.16.14.0 0.0.0.0 172.16.14.1 00:50:56:A8:41:9D 1500
eth1 10.11.11.2 10.11.11.0 0.0.0.0 172.16.14.1 00:50:56:A8:15:18 1500
节点 "m1" 的接口信息
名称 IP 地址 子网 网关 默认网关 HW 地址 MTU
------ --------------- --------------- --------------- --------------- ----------------- ------
eth1 10.11.11.1 10.11.11.0 0.0.0.0 172.16.14.1 00:50:56:A8:46:F8 1500
eth0 172.16.15.101 172.16.14.0 0.0.0.0 172.16.14.1 00:50:56:A8:7F:AC 1500
检查: 子网 "172.16.14.0" 的节点连接性
源 目标 是否已连接?
------------------------------ ------------------------------ ----------------
m3[172.16.15.103] m2[172.16.15.102] 是
m3[172.16.15.103] m1[172.16.15.101] 是
m2[172.16.15.102] m1[172.16.15.101] 是
结果:含有节点 m3,m2,m1 的子网 "172.16.14.0" 的节点连接性检查已通过
检查: 子网 "172.16.14.0" 的 TCP 连接性
源 目标 是否已连接?
------------------------------ ------------------------------ ----------------
m1:172.16.15.101 m3:172.16.15.103 通过
m1:172.16.15.101 m2:172.16.15.102 通过
结果:子网 "172.16.14.0" 的 TCP 连接性检查通过
检查: 子网 "10.11.11.0" 的节点连接性
源 目标 是否已连接?
------------------------------ ------------------------------ ----------------
m3[10.11.11.3] m2[10.11.11.2] 是
m3[10.11.11.3] m1[10.11.11.1] 是
m2[10.11.11.2] m1[10.11.11.1] 是
结果:含有节点 m3,m2,m1 的子网 "10.11.11.0" 的节点连接性检查已通过
检查: 子网 "10.11.11.0" 的 TCP 连接性
源 目标 是否已连接?
------------------------------ ------------------------------ ----------------
m1:10.11.11.1 m3:10.11.11.3 通过
m1:10.11.11.1 m2:10.11.11.2 通过
结果:子网 "10.11.11.0" 的 TCP 连接性检查通过
在子网 "172.16.14.0" 上找到的很可能是用于 VIP 的候选接口的接口为:
m3 eth0:172.16.15.103
m2 eth0:172.16.15.102
m1 eth0:172.16.15.101
在子网 "10.11.11.0" 上找到的很可能是用于专用互连的候选接口的接口为:
m3 eth1:10.11.11.3
m2 eth1:10.11.11.2
m1 eth1:10.11.11.1
正在检查子网掩码一致性...
子网 "172.16.14.0" 的子网掩码一致性检查已通过。
子网 "10.11.11.0" 的子网掩码一致性检查已通过。
子网掩码一致性检查已通过。
结果:节点连接性检查已通过
正在检查多点传送通信...
正在检查子网 "172.16.14.0" 是否能够与多点传送组 "230.0.1.0" 进行多点传送通信...
子网 "172.16.14.0" 是否能够与多点传送组 "230.0.1.0" 进行多点传送通信的检查已通过。
正在检查子网 "10.11.11.0" 是否能够与多点传送组 "230.0.1.0" 进行多点传送通信...
子网 "10.11.11.0" 是否能够与多点传送组 "230.0.1.0" 进行多点传送通信的检查已通过。
多点传送通信检查已通过。
检查 ASMLib 配置。
节点名 状态
------------------------------------ ------------------------
m3 通过
m2 通过
m1 通过
结果:ASMLib 配置检查通过。
检查: 内存总量
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 7.814GB (8193556.0KB) 1.5GB (1572864.0KB) 通过
m2 7.814GB (8193556.0KB) 1.5GB (1572864.0KB) 通过
m1 7.814GB (8193556.0KB) 1.5GB (1572864.0KB) 通过
结果:内存总量 检查已通过
检查: 可用内存
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 7.5255GB (7891008.0KB) 50MB (51200.0KB) 通过
m2 7.5225GB (7887912.0KB) 50MB (51200.0KB) 通过
m1 7.2357GB (7587180.0KB) 50MB (51200.0KB) 通过
结果:可用内存 检查已通过
检查: 交换空间
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 9.75GB (1.0223612E7KB) 7.814GB (8193556.0KB) 通过
m2 9.75GB (1.0223612E7KB) 7.814GB (8193556.0KB) 通过
m1 9.75GB (1.0223612E7KB) 7.814GB (8193556.0KB) 通过
结果:交换空间 检查已通过
检查: "m3:/tmp" 的 空闲磁盘空间
路径 节点名 装载点 可用 必需 状态
---------------- ------------ ------------ ------------ ------------ ------------
/tmp m3 / 57.6543GB 1GB 通过
结果:"m3:/tmp" 的 空闲磁盘空间 检查已通过
检查: "m2:/tmp" 的 空闲磁盘空间
路径 节点名 装载点 可用 必需 状态
---------------- ------------ ------------ ------------ ------------ ------------
/tmp m2 / 57.6543GB 1GB 通过
结果:"m2:/tmp" 的 空闲磁盘空间 检查已通过
检查: "m1:/tmp" 的 空闲磁盘空间
路径 节点名 装载点 可用 必需 状态
---------------- ------------ ------------ ------------ ------------ ------------
/tmp m1 / 53.1924GB 1GB 通过
结果:"m1:/tmp" 的 空闲磁盘空间 检查已通过
检查: "grid" 的 用户存在性
节点名 状态 注释
------------ ------------------------ ------------------------
m3 通过 存在(502)
m2 通过 存在(502)
m1 通过 存在(502)
检查 UID 值为 502 的多个用户
结果:对 UID 值为 502 的多个用户进行的检查已通过
结果:"grid" 的 用户存在性 检查已通过
检查: "oinstall" 的 组存在性
节点名 状态 注释
------------ ------------------------ ------------------------
m3 通过 存在
m2 通过 存在
m1 通过 存在
结果:"oinstall" 的 组存在性 检查已通过
检查: "dba" 的 组存在性
节点名 状态 注释
------------ ------------------------ ------------------------
m3 通过 存在
m2 通过 存在
m1 通过 存在
结果:"dba" 的 组存在性 检查已通过
检查: 组 "oinstall" 中用户 "grid" 的成员资格 [作为 主]
节点名 用户存在 组存在 组中的用户 主 状态
---------------- ------------ ------------ ------------ ------------ ------------
m3 是 是 是 是 通过
m2 是 是 是 是 通过
m1 是 是 是 是 通过
结果:组 "oinstall" 中用户 "grid" 的成员资格检查 [作为 主] 已通过
检查: 组 "dba" 中用户 "grid" 的成员资格
节点名 用户存在 组存在 组中的用户 状态
---------------- ------------ ------------ ------------ ----------------
m3 是 是 是 通过
m2 是 是 是 通过
m1 是 是 是 通过
结果:组 "dba" 中用户 "grid" 的成员资格检查已通过
检查: 运行级别
节点名 运行级别 必需 状态
------------ ------------------------ ------------------------ ----------
m3 5 3,5 通过
m2 5 3,5 通过
m1 5 3,5 通过
结果:运行级别 检查已通过
检查: "打开的文件描述符的最大数" 的 硬性限制
节点名 类型 可用 必需 状态
---------------- ------------ ------------ ------------ ----------------
m3 硬性 262144 65536 通过
m2 硬性 262144 65536 通过
m1 硬性 262144 65536 通过
结果:"打开的文件描述符的最大数" 的 硬性限制 检查已通过
检查: "打开的文件描述符的最大数" 的 软性限制
节点名 类型 可用 必需 状态
---------------- ------------ ------------ ------------ ----------------
m3 软性 4096 1024 通过
m2 软性 4096 1024 通过
m1 软性 4096 1024 通过
结果:"打开的文件描述符的最大数" 的 软性限制 检查已通过
检查: "最大用户进程数" 的 硬性限制
节点名 类型 可用 必需 状态
---------------- ------------ ------------ ------------ ----------------
m3 硬性 65536 16384 通过
m2 硬性 65536 16384 通过
m1 硬性 65536 16384 通过
结果:"最大用户进程数" 的 硬性限制 检查已通过
检查: "最大用户进程数" 的 软性限制
节点名 类型 可用 必需 状态
---------------- ------------ ------------ ------------ ----------------
m3 软性 8188 2047 通过
m2 软性 8188 2047 通过
m1 软性 8188 2047 通过
结果:"最大用户进程数" 的 软性限制 检查已通过
检查: 系统体系结构
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 x86_64 x86_64 通过
m2 x86_64 x86_64 通过
m1 x86_64 x86_64 通过
结果:系统体系结构 检查已通过
检查: 内核版本
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 2.6.39-300.26.1.el5uek 2.6.18 通过
m2 2.6.39-300.26.1.el5uek 2.6.18 通过
m1 2.6.39-300.26.1.el5uek 2.6.18 通过
结果:内核版本 检查已通过
检查: "semmsl" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 1250 1250 250 通过
m2 1250 1250 250 通过
m1 1250 1250 250 通过
结果:"semmsl" 的 内核参数 检查已通过
检查: "semmns" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 640000 640000 32000 通过
m2 640000 640000 32000 通过
m1 640000 640000 32000 通过
结果:"semmns" 的 内核参数 检查已通过
检查: "semopm" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 1250 1250 100 通过
m2 1250 1250 100 通过
m1 1250 1250 100 通过
结果:"semopm" 的 内核参数 检查已通过
检查: "semmni" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 512 512 128 通过
m2 512 512 128 通过
m1 512 512 128 通过
结果:"semmni" 的 内核参数 检查已通过
检查: "shmmax" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 68719476736 68719476736 4195100672 通过
m2 68719476736 68719476736 4195100672 通过
m1 68719476736 68719476736 4195100672 通过
结果:"shmmax" 的 内核参数 检查已通过
检查: "shmmni" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 4096 4096 4096 通过
m2 4096 4096 4096 通过
m1 4096 4096 4096 通过
结果:"shmmni" 的 内核参数 检查已通过
检查: "shmall" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 4294967296 4294967296 2097152 通过
m2 4294967296 4294967296 2097152 通过
m1 4294967296 4294967296 2097152 通过
结果:"shmall" 的 内核参数 检查已通过
检查: "file-max" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 6815744 6815744 6815744 通过
m2 6815744 6815744 6815744 通过
m1 6815744 6815744 6815744 通过
结果:"file-max" 的 内核参数 检查已通过
检查: "ip_local_port_range" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 between 9000.0 & 65500.0 between 9000.0 & 65500.0 between 9000.0 & 65500.0 通过
m2 between 9000.0 & 65500.0 between 9000.0 & 65500.0 between 9000.0 & 65500.0 通过
m1 between 9000.0 & 65500.0 between 9000.0 & 65500.0 between 9000.0 & 65500.0 通过
结果:"ip_local_port_range" 的 内核参数 检查已通过
检查: "rmem_default" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 4194304 4194304 262144 通过
m2 4194304 4194304 262144 通过
m1 4194304 4194304 262144 通过
结果:"rmem_default" 的 内核参数 检查已通过
检查: "rmem_max" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 4194304 4194304 4194304 通过
m2 4194304 4194304 4194304 通过
m1 4194304 4194304 4194304 通过
结果:"rmem_max" 的 内核参数 检查已通过
检查: "wmem_default" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 4194304 4194304 262144 通过
m2 4194304 4194304 262144 通过
m1 4194304 4194304 262144 通过
结果:"wmem_default" 的 内核参数 检查已通过
检查: "wmem_max" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 4194304 4194304 1048576 通过
m2 4194304 4194304 1048576 通过
m1 4194304 4194304 1048576 通过
结果:"wmem_max" 的 内核参数 检查已通过
检查: "aio-max-nr" 的 内核参数
节点名 当前值 已配置 必需 状态 注释
---------------- ------------ ------------ ------------ ------------ ------------
m3 6815744 6815744 1048576 通过
m2 6815744 6815744 1048576 通过
m1 6815744 6815744 1048576 通过
结果:"aio-max-nr" 的 内核参数 检查已通过
检查: "make" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 make-3.81-3.el5 make-3.81 通过
m2 make-3.81-3.el5 make-3.81 通过
m1 make-3.81-3.el5 make-3.81 通过
结果:"make" 的 包存在性 检查已通过
检查: "binutils" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 binutils-2.17.50.0.6-20.el5_8.3 binutils-2.17.50.0.6 通过
m2 binutils-2.17.50.0.6-20.el5_8.3 binutils-2.17.50.0.6 通过
m1 binutils-2.17.50.0.6-20.el5_8.3 binutils-2.17.50.0.6 通过
结果:"binutils" 的 包存在性 检查已通过
检查: "gcc(x86_64)" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 gcc(x86_64)-4.1.2-54.el5 gcc(x86_64)-4.1.2 通过
m2 gcc(x86_64)-4.1.2-54.el5 gcc(x86_64)-4.1.2 通过
m1 gcc(x86_64)-4.1.2-54.el5 gcc(x86_64)-4.1.2 通过
结果:"gcc(x86_64)" 的 包存在性 检查已通过
检查: "libaio(x86_64)" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 libaio(x86_64)-0.3.106-5 libaio(x86_64)-0.3.106 通过
m2 libaio(x86_64)-0.3.106-5 libaio(x86_64)-0.3.106 通过
m1 libaio(x86_64)-0.3.106-5 libaio(x86_64)-0.3.106 通过
结果:"libaio(x86_64)" 的 包存在性 检查已通过
检查: "glibc(x86_64)" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 glibc(x86_64)-2.5-107 glibc(x86_64)-2.5-24 通过
m2 glibc(x86_64)-2.5-107 glibc(x86_64)-2.5-24 通过
m1 glibc(x86_64)-2.5-107 glibc(x86_64)-2.5-24 通过
结果:"glibc(x86_64)" 的 包存在性 检查已通过
检查: "compat-libstdc++-33(x86_64)" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 compat-libstdc++-33(x86_64)-3.2.3-61 compat-libstdc++-33(x86_64)-3.2.3 通过
m2 compat-libstdc++-33(x86_64)-3.2.3-61 compat-libstdc++-33(x86_64)-3.2.3 通过
m1 compat-libstdc++-33(x86_64)-3.2.3-61 compat-libstdc++-33(x86_64)-3.2.3 通过
结果:"compat-libstdc++-33(x86_64)" 的 包存在性 检查已通过
检查: "elfutils-libelf(x86_64)" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 elfutils-libelf(x86_64)-0.137-3.el5 elfutils-libelf(x86_64)-0.125 通过
m2 elfutils-libelf(x86_64)-0.137-3.el5 elfutils-libelf(x86_64)-0.125 通过
m1 elfutils-libelf(x86_64)-0.137-3.el5 elfutils-libelf(x86_64)-0.125 通过
结果:"elfutils-libelf(x86_64)" 的 包存在性 检查已通过
检查: "elfutils-libelf-devel" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 elfutils-libelf-devel-0.137-3.el5 elfutils-libelf-devel-0.125 通过
m2 elfutils-libelf-devel-0.137-3.el5 elfutils-libelf-devel-0.125 通过
m1 elfutils-libelf-devel-0.137-3.el5 elfutils-libelf-devel-0.125 通过
WARNING:
PRVF-7584 : 在节点 m3 上找到多个版本的程序包 "elfutils-libelf-devel": elfutils-libelf-devel(x86_64)-0.137-3.el5,elfutils-libelf-devel(i386)-0.137-3.el5
WARNING:
PRVF-7584 : 在节点 m2 上找到多个版本的程序包 "elfutils-libelf-devel": elfutils-libelf-devel(x86_64)-0.137-3.el5,elfutils-libelf-devel(i386)-0.137-3.el5
WARNING:
PRVF-7584 : 在节点 m1 上找到多个版本的程序包 "elfutils-libelf-devel": elfutils-libelf-devel(x86_64)-0.137-3.el5,elfutils-libelf-devel(i386)-0.137-3.el5
结果:"elfutils-libelf-devel" 的 包存在性 检查已通过
检查: "glibc-common" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 glibc-common-2.5-107 glibc-common-2.5 通过
m2 glibc-common-2.5-107 glibc-common-2.5 通过
m1 glibc-common-2.5-107 glibc-common-2.5 通过
结果:"glibc-common" 的 包存在性 检查已通过
检查: "glibc-devel(x86_64)" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 glibc-devel(x86_64)-2.5-107 glibc-devel(x86_64)-2.5 通过
m2 glibc-devel(x86_64)-2.5-107 glibc-devel(x86_64)-2.5 通过
m1 glibc-devel(x86_64)-2.5-107 glibc-devel(x86_64)-2.5 通过
结果:"glibc-devel(x86_64)" 的 包存在性 检查已通过
检查: "glibc-headers" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 glibc-headers-2.5-107 glibc-headers-2.5 通过
m2 glibc-headers-2.5-107 glibc-headers-2.5 通过
m1 glibc-headers-2.5-107 glibc-headers-2.5 通过
结果:"glibc-headers" 的 包存在性 检查已通过
检查: "gcc-c++(x86_64)" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 gcc-c++(x86_64)-4.1.2-54.el5 gcc-c++(x86_64)-4.1.2 通过
m2 gcc-c++(x86_64)-4.1.2-54.el5 gcc-c++(x86_64)-4.1.2 通过
m1 gcc-c++(x86_64)-4.1.2-54.el5 gcc-c++(x86_64)-4.1.2 通过
结果:"gcc-c++(x86_64)" 的 包存在性 检查已通过
检查: "libaio-devel(x86_64)" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 libaio-devel(x86_64)-0.3.106-5 libaio-devel(x86_64)-0.3.106 通过
m2 libaio-devel(x86_64)-0.3.106-5 libaio-devel(x86_64)-0.3.106 通过
m1 libaio-devel(x86_64)-0.3.106-5 libaio-devel(x86_64)-0.3.106 通过
结果:"libaio-devel(x86_64)" 的 包存在性 检查已通过
检查: "libgcc(x86_64)" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 libgcc(x86_64)-4.1.2-54.el5 libgcc(x86_64)-4.1.2 通过
m2 libgcc(x86_64)-4.1.2-54.el5 libgcc(x86_64)-4.1.2 通过
m1 libgcc(x86_64)-4.1.2-54.el5 libgcc(x86_64)-4.1.2 通过
结果:"libgcc(x86_64)" 的 包存在性 检查已通过
检查: "libstdc++(x86_64)" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 libstdc++(x86_64)-4.1.2-54.el5 libstdc++(x86_64)-4.1.2 通过
m2 libstdc++(x86_64)-4.1.2-54.el5 libstdc++(x86_64)-4.1.2 通过
m1 libstdc++(x86_64)-4.1.2-54.el5 libstdc++(x86_64)-4.1.2 通过
结果:"libstdc++(x86_64)" 的 包存在性 检查已通过
检查: "libstdc++-devel(x86_64)" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 libstdc++-devel(x86_64)-4.1.2-54.el5 libstdc++-devel(x86_64)-4.1.2 通过
m2 libstdc++-devel(x86_64)-4.1.2-54.el5 libstdc++-devel(x86_64)-4.1.2 通过
m1 libstdc++-devel(x86_64)-4.1.2-54.el5 libstdc++-devel(x86_64)-4.1.2 通过
结果:"libstdc++-devel(x86_64)" 的 包存在性 检查已通过
检查: "sysstat" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 sysstat-7.0.2-12.0.1.el5 sysstat-7.0.2 通过
m2 sysstat-7.0.2-12.0.1.el5 sysstat-7.0.2 通过
m1 sysstat-7.0.2-12.0.1.el5 sysstat-7.0.2 通过
结果:"sysstat" 的 包存在性 检查已通过
检查: "ksh" 的 包存在性
节点名 可用 必需 状态
------------ ------------------------ ------------------------ ----------
m3 ksh-20100621-12.el5 ksh-20060214 通过
m2 ksh-20100621-12.el5 ksh-20060214 通过
m1 ksh-20100621-12.el5 ksh-20060214 通过
结果:"ksh" 的 包存在性 检查已通过
检查 UID 值为 0 的多个用户
结果:对 UID 值为 0 的多个用户进行的检查已通过
检查: 当前组 ID
结果:当前组 ID 检查已通过
开始检查 root 用户的主要组的一致性
节点名 状态
------------------------------------ ------------------------
m3 通过
m2 通过
m1 通过
已通过 root 用户主要组的一致性检查
正在使用网络时间协议 (NTP) 启动时钟同步检查...
NTP 配置文件检查开始...
NTP 配置文件 "/etc/ntp.conf" 在所有节点上可用
NTP 配置文件检查通过
正在检查守护程序的活动性...
检查: "ntpd" 的活动性
节点名 正在运行?
------------------------------------ ------------------------
m3 是
m2 是
m1 是
结果:"ntpd" 的活动性检查已通过
针对 NTP 守护程序或服务是否活动的检查在所有节点上均已通过
为快速定向选项 "-x" 检查 NTP 守护程序命令行
检查: NTP 守护程序命令行
节点名 是否设置了快速定向选项?
------------------------------------ ------------------------
m3 是
m2 是
m1 是
结果:
NTP 守护程序快速定向选项检查已通过
在文件 "/etc/sysconfig/ntpd" 中为快速定向选项 "-x" 检查 NTP 守护程序的引导时间配置
检查: NTP 守护程序的引导时间配置
节点名 是否设置了快速定向选项?
------------------------------------ ------------------------
m3 是
m2 是
m1 是
结果:
快速定向选项的 NTP 引导程序的引导时间配置检查已通过
检查所有节点上的 NTP 守护程序或服务是否均使用 UDP 端口 123
检查 NTP 守护程序或服务是否正在使用 UDP 端口 123
节点名 端口是否打开?
------------------------------------ ------------------------
m3 是
m2 是
m1 是
NTP 公用时间服务器检查开始...
NTP 时间服务器 "212.26.18.41" 由所有运行 NTP 守护程序的节点公用
NTP 时间服务器 ".LOCL." 由所有运行 NTP 守护程序的节点公用
公用 NTP 时间服务器检查通过
与 NTP 时间服务器的时钟时间偏移量检查开始...
正在节点 "[m3, m2, m1]" 上检查...
检查: 与 NTP 时间服务器的时钟时间偏移量
时间服务器: 212.26.18.41
时间偏移量限制: 1000.0 毫秒
节点名 时间偏移量 状态
------------ ------------------------ ------------------------
m3 6.589 通过
m2 5.253 通过
m1 0.18 通过
时间服务器 "212.26.18.41" 的时间偏移量在节点 "[m3, m2, m1]" 允许的限制内。
时间服务器: .LOCL.
时间偏移量限制: 1000.0 毫秒
节点名 时间偏移量 状态
------------ ------------------------ ------------------------
m3 0.0 通过
m2 0.0 通过
m1 0.0 通过
时间服务器 ".LOCL." 的时间偏移量在节点 "[m3, m2, m1]" 允许的限制内。
时钟时间偏移量检查通过
结果:使用网络时间协议 (NTP) 进行时钟同步检查通过
正在检查核心文件名模式一致性...
核心文件名模式一致性检查已通过。
检查以确保用户 "grid" 不在 "root" 组中
节点名 状态 注释
------------ ------------------------ ------------------------
m3 通过 不存在
m2 通过 不存在
m1 通过 不存在
结果:用户 "grid" 不属于 "root" 组。检查已通过
检查默认用户文件创建掩码
节点名 可用 必需 注释
------------ ------------------------ ------------------------ ----------
m3 0022 0022 通过
m2 0022 0022 通过
m1 0022 0022 通过
结果:默认用户文件创建掩码检查已通过
检查文件 "/etc/resolv.conf" 在节点间的一致性
检查文件 "/etc/resolv.conf" 以确保只定义了 'domain' 和 'search' 条目中的一个
文件 "/etc/resolv.conf" 未同时定义 'domain' 和 'search' 条目
正在检查文件 "/etc/resolv.conf" 中的 'domain' 条目是否在节点间一致...
文件 "/etc/resolv.conf" 中的 'domain' 条目在节点间一致
正在检查文件 "/etc/resolv.conf" 中的 'search' 条目是否在节点间一致...
文件 "/etc/resolv.conf" 中的 'search' 条目在节点间一致
检查文件 "/etc/resolv.conf" 以确保只定义了一个 'search' 条目
所有节点在文件 "/etc/resolv.conf" 中都定义了一个 'search' 条目
检查所有节点以确保 'search' 条目为 "localdomain" (与在节点 "m3" 上找到的一样)
集群的所有节点都具有相同的 'search' 值
检查无法访问节点的 DNS 响应时间
节点名 状态
------------------------------------ ------------------------
m3 失败
m2 失败
m1 失败
PRVF-5636 : 在以下节点上, 无法访问的节点的 DNS 响应时间超过 "15000" 毫秒: m3,m2,m1
文件 "/etc/resolv.conf" 在各节点间不一致
检查: 时区一致性
结果:时区一致性 检查已通过
在所有节点上预检查 集群服务设置 失败。
m1:/home/grid$
上面没有配置DNS所以报错 如果需要还是可以配置鉴于本公司内网就是没有配。
不要理它了 直接上图安装软件
[root@m1 soft]# xhost +
access control disabled, clients can connect from any host
一定要确保能够抓图 上次没有抓图死活解决不了 重装OK
[root@m1 soft]# su - grid
m1:/home/grid$/tmp/soft/grid/runInstalle
这个是笔记不是 我的 但是 可以思考一下
发现有两个failed,一个是ntp,一个是grid用户不在dba组中
oracle11gR2 RAC中使用Cluster Time Synchronization Service(CTSS)同步各节点的时间,当安装程序发现 NTP 协议处于非活动状态时,安装集群时间同步服务将以活动模式自动进行安装并通过所有节点的时间。如果发现配置了 NTP,则以观察者模式 启动集群时间同步服务,Oracle Clusterware 不会在集群中进行活动的时间同步。
使用root用户在node1,node2中执行以下操作,关闭ntp服务,mv配置文件
-------------------r
问题:
我发现不了磁盘在安装到
怀疑一
mkfs.exts 我分外区之后将磁盘格式化为ext3了
1、 新建虚拟机磁盘
2、
3、
4、
5、
6、
6
M2 上
2
3、
4、m3 也同样是一样的 这里你照着看 我不演示了。
5
6、
7、
完了。
m3 的也是这样添加 一样的 我不演示了
注意: 做完这些之后 init 6 重起机器。一定重启
重启之后 :
fdisk –l 会看到 /dev/sdg sdh
没有被分区 这个时候分区 但是 不要格式化 记住 不要格式化。
如下:
Disk /dev/sdh: 104 MB, 104857600 bytes
64 heads, 32 sectors/track, 100 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
Disk /dev/sdh doesn't contain a valid partition table
Disk /dev/sdg: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdg doesn't contain a valid partition table
对硬盘分区:
只是需要在一个节点就是了 不需要在其他节点做
fdisk /dev/sdg
fdisk /dev/sdh
fdisk –l 查看生成的信息
Disk /dev/sdh: 104 MB, 104857600 bytes
64 heads, 32 sectors/track, 100 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
Device Boot Start End Blocks Id System
/dev/sdh1 1 100 102384 83 Linux
Disk /dev/sdg: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdg1 1 261 2096451 83 Linux
这种方法不成立。
我新建了2个2 G 500M的磁盘但是 还是不行 并且安装网上说的修改路径
/dev/oracleasm/disks/* 还是不能发现磁盘。
分析:
1 检查结果除DNS没有配置之外 其他配置都是OK。如果有问题时通不过CRS检查的
2 ASM磁盘组 主主 属主没有任何问题 如果原来有问题 我新建了还是发现不了 故可以排除
3 我修改磁盘路径 /dev/sd* 不行 我把磁盘绑定为裸设备 使用udev绑定通过裸设备绑定后修改为/dev/raw/* 还是不能发现
这里 udev就是udev不能使用裸设备。
4 Google网上 修改/dev/oracleasm/disks/* 未果 还是发现不了磁盘 根据google 在网上很多都能通过修改磁盘路径/dev/oracleasm/disks/* 来找到oracleasm磁盘组。
5 节点1 节点2 节点3 fdisk –l 都能够发现分区 并且 严格按照asm磁盘组的步骤来的故步骤上可以排除。
6 到底问题在哪里????
1、没有用grid用户解压
2、grid软件有问题--根本原因。
安装grid软件
1、
2
3
4
加选 中文 如果这里是 中文安装界面 那么就自动加选 不用点击添加按钮 直接下一步
5、
6
7
9
10
11
12
报错:
注意:在 11gr2 中
external >= 1
normal >=3
high >=5
我没有选择外部冗余
12
13
14
15
16
17
[root@m3 ~]# mkdir -p /u01/gridsoft/11.2.0
[root@m3 ~]# mkdir -p /u01/gridbase
[root@m3 ~]# chown -R grid:oinstall /u01
[root@m3 ~]# mkdir -p /u01/oracle/11.2.0/db_1
[root@m3 ~]# mkdir -p /u01/app/oracle/
[root@m3 ~]# chown -R oracle:oinstall /u01/app/oracle
[root@m3 ~]# chmod -R 775 /u01
报错
这么解决OK
解决:
chown -R grid:oinstall /u01
Oinstall组
oracle 11.0.2 的bug
直接ignore |
依次执行 必须执行成功
root用户
m1
[root@m1 app]# whoami
root
[root@m1 app]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
[root@m1 app]# /u01/app/grid/11.2.0/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /u01/app/grid/11.2.0
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /u01/app/grid/11.2.0/crs/install/crsconfig_params
Creating trace directory
User ignored Prerequisites during installation
OLR initialization - successful
root wallet
root wallet cert
root cert export
peer wallet
profile reader wallet
pa wallet
peer wallet keys
pa wallet keys
peer cert request
pa cert request
peer cert
pa cert
peer root cert TP
profile reader root cert TP
pa root cert TP
peer pa cert TP
pa peer cert TP
profile reader pa cert TP
profile reader peer cert TP
peer user cert
pa user cert
Adding Clusterware entries to inittab
CRS-2672: Attempting to start 'ora.mdnsd' on 'm1'
CRS-2676: Start of 'ora.mdnsd' on 'm1' succeeded
CRS-2672: Attempting to start 'ora.gpnpd' on 'm1'
CRS-2676: Start of 'ora.gpnpd' on 'm1' succeeded
CRS-2672: Attempting to start 'ora.cssdmonitor' on 'm1'
CRS-2672: Attempting to start 'ora.gipcd' on 'm1'
CRS-2676: Start of 'ora.cssdmonitor' on 'm1' succeeded
CRS-2676: Start of 'ora.gipcd' on 'm1' succeeded
CRS-2672: Attempting to start 'ora.cssd' on 'm1'
CRS-2672: Attempting to start 'ora.diskmon' on 'm1'
CRS-2676: Start of 'ora.diskmon' on 'm1' succeeded
CRS-2676: Start of 'ora.cssd' on 'm1' succeeded
ASM created and started successfully.
Disk Group OCR created successfully.
clscfg: -install mode specified
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
CRS-4256: Updating the profile
Successful addition of voting disk 3c96dd97eed54fa3bf2e9b4852c2c4e9.
Successful addition of voting disk 7c194843150d4fc1bf654a75b41316ba.
Successful addition of voting disk 0af716a4e7fd4ff3bfcd252c665ec8b5.
Successfully replaced voting disk group with +OCR.
CRS-4256: Updating the profile
CRS-4266: Voting file(s) successfully replaced
## STATE File Universal Id File Name Disk group
-- ----- ----------------- --------- ---------
1. ONLINE 3c96dd97eed54fa3bf2e9b4852c2c4e9 (/dev/ocr1) [OCR]
2. ONLINE 7c194843150d4fc1bf654a75b41316ba (/dev/ocr2) [OCR]
3. ONLINE 0af716a4e7fd4ff3bfcd252c665ec8b5 (/dev/asm-disk1) [OCR]
Located 3 voting disk(s).
CRS-2672: Attempting to start 'ora.asm' on 'm1'
CRS-2676: Start of 'ora.asm' on 'm1' succeeded
CRS-2672: Attempting to start 'ora.OCR.dg' on 'm1'
CRS-2676: Start of 'ora.OCR.dg' on 'm1' succeeded
Configure Oracle Grid Infrastructure for a Cluster ... succeeded
[root@m1 app]#
m2 上
[root@m2 ~]# /u01/app/grid/11.2.0/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /u01/app/grid/11.2.0
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /u01/app/grid/11.2.0/crs/install/crsconfig_params
Creating trace directory
User ignored Prerequisites during installation
OLR initialization - successful
Adding Clusterware entries to inittab
CRS-4402: The CSS daemon was started in exclusive mode but found an active CSS daemon on node m1, number 1, and is terminating
An active cluster was found during exclusive startup, restarting to join the cluster
Configure Oracle Grid Infrastructure for a Cluster ... succeeded
注意
上面的步骤 不一样了
m3上:
[root@m3 u01]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
[root@m3 u01]# whoami
root
[root@m3 u01]# /u01/app/grid/11.2.0/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /u01/app/grid/11.2.0
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /u01/app/grid/11.2.0/crs/install/crsconfig_params
Creating trace directory
User ignored Prerequisites during installation
OLR initialization - successful
Adding Clusterware entries to inittab
CRS-4402: The CSS daemon was started in exclusive mode but found an active CSS daemon on node m1, number 1, and is terminating
An active cluster was found during exclusive startup, restarting to join the cluster
Configure Oracle Grid Infrastructure for a Cluster ... succeeded
[root@m3 u01]#
看到我那个success没有
可以点击OK了。
下一步:
INS-20802 Oracle Cluster Verifiacation Utilitity faild
解决:
INS-20802 Oracle Cluster Verification 实用程序失败
问题现象:
Grid安装到最后一步,两边的root脚本也执行完了,撂出个INS-20802错误,从错误现象来看,看不出什么问题,提示查看.log文件。
Log文件内容:
INFO: Checking Single Client Access Name (SCAN)...
INFO: Checking name resolution setup for "SCAN"...
INFO: ERROR:
INFO: PRVF-4664 : Found inconsistent name resolution entries for SCAN name "SCAN"
INFO: ERROR:
INFO: PRVF-4657 : Name resolution setup check for "SCAN" (IP address: 172.16.9.150) failed
INFO: ERROR:
INFO: PRVF-4664 : Found inconsistent name resolution entries for SCAN name "SCAN"
INFO: Verification of SCAN VIP and Listener setup failed
问题分析:
通过参考Metalink[ID 887471]文章得出以下结论:
http://www.prudentwoo.com/archives/730
http://space.itpub.net/?uid-20674423-action-viewspace-itemid-752693
http://blog.csdn.net/wuweilong/article/details/8505806
由于配置了/etc/hosts来解析SCAN,导致未走DNS来进行SCAN的解析,爆出此错误,可以考虑忽略掉,或者删除/etc/hosts文件中的SCAN解析部分,并且再次通过nslookup验证DNS的解析是否正常即可。
直接跳过
find / -name crs_stat
[oracle@m1 bin]$ crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora....ER.lsnr ora....er.type ONLINE ONLINE m1
ora....N1.lsnr ora....er.type ONLINE ONLINE m1
ora.OCR.dg ora....up.type ONLINE ONLINE m1
ora.asm ora.asm.type ONLINE ONLINE m1
ora.cvu ora.cvu.type ONLINE ONLINE m1
ora.gsd ora.gsd.type OFFLINE OFFLINE
ora....SM1.asm application ONLINE ONLINE m1
ora....M1.lsnr application ONLINE ONLINE m1
ora.m1.gsd application OFFLINE OFFLINE
ora.m1.ons application ONLINE ONLINE m1
ora.m1.vip ora....t1.type ONLINE ONLINE m1
ora....SM2.asm application ONLINE ONLINE m2
ora....M2.lsnr application ONLINE ONLINE m2
ora.m2.gsd application OFFLINE OFFLINE
ora.m2.ons application ONLINE ONLINE m2
ora.m2.vip ora....t1.type ONLINE ONLINE m2
ora....SM3.asm application ONLINE ONLINE m3
ora....M3.lsnr application ONLINE ONLINE m3
ora.m3.gsd application OFFLINE OFFLINE
ora.m3.ons application ONLINE ONLINE m3
ora.m3.vip ora....t1.type ONLINE ONLINE m3
ora....network ora....rk.type ONLINE ONLINE m1
ora.oc4j ora.oc4j.type ONLINE ONLINE m1
ora.ons ora.ons.type ONLINE ONLINE m1
ora.scan1.vip ora....ip.type ONLINE ONLINE m1
[oracle@m1 bin]$ srvctl status asm
ASM is running on m1,m3,m2
[oracle@m1 bin]$
[oracle@m1 bin]$ srvctl status asm
ASM is running on m1,m3,m2
说明我的grid软件是安装好的。
二、安装数据库软件
注意必须以oracle用户解压:
到oracle用户目录下:
su - oracle
mkdir aa
upzip p10404530_112030_Linux-x86-64_1of7.zip
upzip p10404530_112030_Linux-x86-64_2of7.zip
上面2个解压到同一目录 aa
cd /home/oracle/aa/database
./runInstaller
1、
去掉勾
3、
问你有没有metalink帐号
跳过软件更新:
4、
只是安装数据库软件 等软件安装好之后才安装 数据库 分开好些 也可以一起
5、
6、
加选中文
7、
8、
9、
解决:
注意 这里授权一下不要和上面安装 grid的目录搞错了
[root@m1 u01]# ll
total 16
drwxr-xr-x 5 root oinstall 4096 Oct 21 16:00 app
drwxr-xr-x 2 grid oinstall 4096 Oct 21 15:00 gridbase
drwxr-xr-x 3 grid oinstall 4096 Oct 21 14:59 gridsoft
drwxr-xr-x 3 grid oinstall 4096 Oct 21 15:00 oracle
[root@m1 u01]# cd oracle/
[root@m1 oracle]# ll
total 4
drwxr-xr-x 3 grid oinstall 4096 Oct 21 15:00 11.2.0
[root@m1 oracle]# cd 11.2.0/
[root@m1 11.2.0]# ll
total 4
drwxr-xr-x 2 grid oinstall 4096 Oct 21 15:00 db_1
[root@m1 11.2.0]# cd db_1/
[root@m1 db_1]# ll
total 0
[root@m1 db_1]# cd ..
3个节点都要改
cd /u01
chown -R oracle.oinstall oracle/
10、
11、
12
12、
哈哈 出现错了
下一步:
PRVG-1101 : SCAN name "rac-scan" failed to resolve
管方说的:
点击yes
下一步:
下一步:
等待
依次执行这个脚本:
m1 m2 m3
m1
[root@m1 ~]# whoami
root
[root@m1 ~]# /u01/oracle/11.2.0/db_1/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/oracle/11.2.0/db_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
m2
[root@m2 grid]# whoami
root
[root@m2 grid]# /u01/oracle/11.2.0/db_1/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/oracle/11.2.0/db_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
[root@m2 grid]#
m3
[root@m3 grid]# /u01/oracle/11.2.0/db_1/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/oracle/11.2.0/db_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
好了 软件安装好了。
五、 创建 ASM 磁盘组
在安装 Clusterware 的时候,会创建 ASM 实例,但是它只创建了一个 CRS 组来安装 OCR 和 Voting
Disk。
在我们继续安装 Oracle 数据库之前,我们需要创建一个 DATA 和 FRA 的 ASM 磁盘组来存放这些文件。
用 grid 用户运行 asmca(ASM Configuration Assistant)命令就可以弹出创建窗口。
在窗口中创建完 DATA 和 FRA 组后,退出窗口即可。
在建库前需要先创建数据文件的ASM磁盘组,以登录,执行asmca命令:
grid用户:
$asmca
弹出如下界面,按规划要求创建好相应的磁盘组:
有些时候 直接运行asmca找不到
root用户find
cd /u01/app/grid/bin/
./asmca
上面那个是我建立好了的安装GI的时候 现在我们的任务是新建
我们选择2G的这个 为什么 用于存放OMF路径。
其他2个是数据盘。各200G。
呵呵 挺顺利的
再来 建立数据盘:
哈哈 可能要报错哦 试试 为什么呢 你猜猜看 呵呵
原来11g 创建asm磁盘组 选择正常冗余 没有任何限制 也不要求有多少块盘。只是 对
GI 正常冗余有要求。
下一步
点击exit 退出 配置菜单
这里要强掉一下 看见 选择 正常冗余 和 外部冗余的区别没有
正常冗余 有是一块一块的换的 不是一起的用的
外部冗余 是所有盘一起换的是一起用的
[grid@m1 bin]$ crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora.DB.dg ora....up.type ONLINE ONLINE m1
ora.FRA.dg ora....up.type ONLINE ONLINE m1
ora....ER.lsnr ora....er.type ONLINE ONLINE m1
ora....N1.lsnr ora....er.type ONLINE ONLINE m1
ora.OCR.dg ora....up.type ONLINE ONLINE m1
ora.asm ora.asm.type ONLINE ONLINE m1
ora.cvu ora.cvu.type ONLINE ONLINE m1
ora.gsd ora.gsd.type OFFLINE OFFLINE
ora....SM1.asm application ONLINE ONLINE m1
ora....M1.lsnr application ONLINE ONLINE m1
ora.m1.gsd application OFFLINE OFFLINE
ora.m1.ons application ONLINE ONLINE m1
ora.m1.vip ora....t1.type ONLINE ONLINE m1
ora....SM2.asm application ONLINE ONLINE m2
ora....M2.lsnr application ONLINE ONLINE m2
ora.m2.gsd application OFFLINE OFFLINE
ora.m2.ons application ONLINE ONLINE m2
ora.m2.vip ora....t1.type ONLINE ONLINE m2
ora....SM3.asm application ONLINE ONLINE m3
ora....M3.lsnr application ONLINE ONLINE m3
ora.m3.gsd application OFFLINE OFFLINE
ora.m3.ons application ONLINE ONLINE m3
ora.m3.vip ora....t1.type ONLINE ONLINE m3
ora....network ora....rk.type ONLINE ONLINE m1
ora.oc4j ora.oc4j.type ONLINE ONLINE m1
ora.ons ora.ons.type ONLINE ONLINE m1
ora.scan1.vip ora....ip.type ONLINE ONLINE m1
[grid@m1 bin]$
六 安装DB 数据库
在节点 1 用 Oracle 用户运行 dbca,创建实例。
以oracle用户执行dbca,弹出图形界面来安装DB库。
m1 oracle用户:
su - oralce
dbca
下一步:
下一步:
下一步
配置OEM 默认
开启自动维护功能:
下一步:
下一步:
下一步:
这里是制定数据库数据文件的存放路径
输入密码的时候会弹出一个错 你自己添加确定就是了 没事的
下一步:
下一步:
下一步:
下一步:
他问你有没有足够的空间,这里之后1911M 新建起来之后可以建的,也可以自己添加硬盘。
也可以把它放入DB里面 也可以忽略我就忽略了
注意 如果下次 还是 见到这个界面一定要 选择默认的 3台数据都用这个FRA闪回路径 空间不够最好放到
+DATA里面 不然会报错 ORA 1103 数据库也会夯在 mount哪里。
选择 Typical 勾选 Use Automatic Memory Management
选择 Sizeing菜单
改变进程数 150 --->改到 1200
选择专有模式
现在可以下一步了
点击 finish
好了 等待 大公告成。
出现了问题
这个是配置OEM的一个bug 可以忽略掉。
我怀疑是 刚才设置密码的时候太短:
解决:
这里设置密码的时候一定要 多整几个。
看看可以退回去能行不。
我先查查
点击exit退出 OK 好了
检查:
检查CRS运行状态
[oracle@m1 bin]$ crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora.DB.dg ora....up.type ONLINE ONLINE m1
ora.FRA.dg ora....up.type ONLINE ONLINE m1
ora....ER.lsnr ora....er.type ONLINE ONLINE m1
ora....N1.lsnr ora....er.type ONLINE ONLINE m1
ora.OCR.dg ora....up.type ONLINE ONLINE m1
ora.asm ora.asm.type ONLINE ONLINE m1
ora.cvu ora.cvu.type ONLINE ONLINE m1
ora.gsd ora.gsd.type OFFLINE OFFLINE -----gsd没有运行
ora....SM1.asm application ONLINE ONLINE m1
ora....M1.lsnr application ONLINE ONLINE m1
ora.m1.gsd application OFFLINE OFFLINE
ora.m1.ons application ONLINE ONLINE m1
ora.m1.vip ora....t1.type ONLINE ONLINE m1
ora....SM2.asm application ONLINE ONLINE m2
ora....M2.lsnr application ONLINE ONLINE m2
ora.m2.gsd application OFFLINE OFFLINE
ora.m2.ons application ONLINE ONLINE m2
ora.m2.vip ora....t1.type ONLINE ONLINE m2
ora....SM3.asm application ONLINE ONLINE m3
ora....M3.lsnr application ONLINE ONLINE m3
ora.m3.gsd application OFFLINE OFFLINE
ora.m3.ons application ONLINE ONLINE m3
ora.m3.vip ora....t1.type ONLINE ONLINE m3
ora.mes.db ora....se.type ONLINE ONLINE m1
ora....network ora....rk.type ONLINE ONLINE m1
ora.oc4j ora.oc4j.type ONLINE ONLINE m1
ora.ons ora.ons.type ONLINE ONLINE m1
ora.scan1.vip ora....ip.type ONLINE ONLINE m1
解决:
[oracle@m1 bin]$ pwd
/u01/app/grid/11.2.0/bin
检查应用程序资源的状态
[oracle@m1 bin]$ srvctl status nodeapps -n m1
VIP m1-vip is enabled
VIP m1-vip is running on node: m1
Network is enabled
Network is running on node: m1
GSD is disabled -----------GSD没有运行
GSD is not running on node: m1
ONS is enabled
ONS daemon is running on node: m1
[oracle@m1 bin]$ srvctl status asm -n m1
ASM is running on m1
[oracle@m1 bin]$ srvctl status asm -n m2
ASM is running on m2
[oracle@m1 bin]$ srvctl status asm -n m3
ASM is running on m3
检查数据库运行状态
[oracle@m1 bin]$ srvctl status database -d mes
Instance mes1 is running on node m1
Instance mes2 is running on node m2
Instance mes3 is running on node m3
检查 Oracle 集群件的状态
[oracle@m1 bin]$ crsctl check crs
CRS-4638: Oracle High Availability Services is online
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
TAF可以在安装完rac后配置,也可以在安装中配置,其实就是实现一个服务的负载均衡和failover,应该用srvctl配置的,注意用grid用户下的crs目录中的srvctl
在grid用户下 我的环境变量是但是sqlplus 链接不了
export ORACLE_SID=+ASM2
export ORACLE_BASE=/u01/gridbase
export ORACLE_HOME=/u01/gridsoft/11.2.0
export PATH=$ORACLE_HOME/bin:$PATH:/usr/local/bin/:.
export TEMP=/tmp
export TMP=/tmp
export TMPDIR=/tmp
umask 022
修改环境变量:
注意 : 我以 grid用户做的
[grid@m1 ~]$ cp ~/.bash_profile ~/.asm
[grid@m1 ~]$ vim ~/.asm
[grid@m1 ~]$ . ~/.asm
[grid@m1 ~]$ sqlplus -s / as sysasm
-bash: sqlplus: command not found
为什么会出现这个情况
建立ASM的时候 是以 grid用户建立 oracle用户没有权限
但是 安装数据库软件 是 以 oracle 用户安装的这样就矛盾了。
oracle 用户
export ORACLE_SID=+ASM1
oracle@m1 ~]$ export ORACLE_SID=+ASM1
[oracle@m1 ~]$ sqlplus -s / as sysasm
ERROR:
ORA-01031: insufficient privileges
报错
在grid用户下 我的环境变量是但是sqlplus 链接不了
grid用户:
安装GI
ASM磁盘组
chown -R grid:oinstall /u01
安装grid的时候 ORACLE_BASE=/u01/app/oracle
SOFT路径=/u01/app/grid/11.2.0
oracle用户:
安装 数据库软件和数据库
安装软件的时候:
ORACLE_BASE=/u01/oracle
Soft=/u01/oracle/11.2.0/db_1
应该是oracle 用户
oracle 用户 建软件 建库 grid 安装 GI 和 asm磁盘组。
cd /u01
chown -R oracle.oinstall oracle/
总结:
安装GI的时候 ORACLE_BASE 目录是 /u01/app//oracle
软件目录是
尝试解决:
1、
--将用户 grid 添加到 dba 组:
[root@rac1 app]# gpasswd -a grid dba
Adding user grid to group dba
[grid@m1 ~]$ cd /u01/app/grid/11.2.0/bin/
[grid@m1 bin]$ sqlplus
Error 6 initializing SQL*Plus
SP2-0667: Message file sp1<lang>.msb not found
SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory
[grid@m1 bin]$
[grid@m1 ~]$ cd /u01/app/grid/11.2.0/bin/
[grid@m1 bin]$ sqlplus
Error 6 initializing SQL*Plus
SP2-0667: Message file sp1<lang>.msb not found
SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory
[grid@m1 bin]$ su - oracle
Password:
[oracle@m1 ~]$ export ORACLE_SID=+ASM1
[oracle@m1 ~]$ sqlplus / as sysasm
SQL*Plus: Release 11.2.0.3.0 Production on Wed Oct 23 09:51:31 2013
Copyright (c) 1982, 2011, Oracle. All rights reserved.
ERROR:
ORA-01031: insufficient privileges
Enter user-name:
2、
解决办法:
export ORACLE_SID=+ASM1
export ORACLE_BASE=/u01/gridbase
export ORACLE_HOME=/u01/app/grid/11.2.0
export PATH=$ORACLE_HOME/bin:$PATH:/usr/local/bin/:.
export TEMP=/tmp
export TMP=/tmp
export TMPDIR=/tmp
umask 022
配置TAF
7.22 节点 2 配置
7.22.1 修改 Tnsnames.ora 文件
NODE2_LOCAL=
(ADDRESS = (PROTOCOL = TCP)(HOST = rac2-vip)(PORT = 1521))
NODE1_LOCAL=
(ADDRESS = (PROTOCOL = TCP)(HOST= rac1-vip)(PORT = 1521))
DAVE_REMOTE =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST=rac1-vip)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST=rac2-vip)(PORT = 1521))
)
)
7.22.2 设置 local_listener 参数
sql > alter system set LOCAL_LISTENER='NODE2_LOCAL' scope=both sid='dave2';
sql> alter system set REMOTE_LISTENER='DAVE_REMOTE' scope=both sid='*';
验证:
$ tnsping node2_local
$ tnsping dave_remote
我这里不淹死了。
11gr2版本:
grid用户
netca
grid用户上默认配置了 listener
但是在oracle用户上就没有配置listener
grid用户默认没有配置service 服务名 但是 oracle用户配置服务名 是不是要我手动配置
oracle 用户:
netca 提示 推荐 建立listener在 grid目录
点击
配置了TAF之后 很多都报错 就像上面的。这个是怎么回事
怎么解决 我的 rac-scan IP 远程不能连接上去?
1、
以oracle用户
alter system set remote_listener=’rac-scan:1521’ scope=both sid=’*’
2
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=172.16.15.101)(PORT=1521))))' sid='mes1';
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=172.16.15.102)(PORT=1521))))' sid='mes2';
alter system set local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=172.16.15.102)(PORT=1521))))' sid='mes3';
3 show parameter listerner
SQL> show parameter listener
NAME TYPE VALUE
------------------------------------ ---------------------- ------------------------------
listener_networks string
local_listener string (DESCRIPTION=(ADDRESS_LIST=(AD
DRESS=(PROTOCOL=TCP)(HOST=172.
16.15.101)(PORT=1521))))
remote_listener string rac-scan:1521
oracle 下
sqlplus / as sysdba@mes
或者
sqlplus mhz/mhz@mes
换了一个内核Knerel 以前内核 2.6.39-300.ol5.9
现在的kernel 是 2.6.18-EL.base
为什么要这么做是因为创建ACFS文件系统的时候不支持2.6.300-OL5.9