准备环境的时 ,要4个对外IP,2个对内IP

不超过2T,,一般都用OCFS

高端存储适合用ASM

 

linux10G安装的时候,安装的机器时间要小于等于(如果是等于要严格等于)第二个机器的时间(只有linux10G会有这个问题),不然会报错,拷贝空值什么的。

 

出现此错误,说明是时间问题,

 linux 10201 ocfs RAC 安装+升级到10205

 

 

 

hosts里面要注意的地方:

1)127.0.0.1 那一行不能删除。

2)主机名要小写,不能大写。

3)不能加下划线。

1.安装系统,把所有的开发包全部安装上

关掉防火墙和SELinux

yum -y install compat-libstdc++* 
yum -y install elfutils-libelf-devel* 
yum -y install elfutils-libelf-devel-static* 
yum -y install gcc* 
yum -y install gcc-c++* 
yum -y install glibc* 
yum -y install glibc-common* 
yum -y install glibc-devel* 
yum -y install glibc-headers* 
yum -y install kernel-headers* 
yum -y install ksh* 
yum -y install libaio* 
yum -y install libaio-devel* 
yum -y install libgcc* 
yum -y install libgomp* 
yum -y install libstdc++* 
yum -y install libstdc++-devel* 
yum -y install make* 
yum -y install sysstat* 
yum -y install unixODBC* 
yum -y install unixODBC-devel* 
yum -y install libXp*

2.配置核心参数

vi /etc/sysctl.conf

kernel.core_uses_pid = 1
fs.file-max = 65536
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
kernel.shmmni = 4096
kernel.sem = 500 64000 100 128
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1

修改完执行此命令 : sysctl -p

vi  /etc/profile 
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
之后,执行:$ulimit验证一下.

vi  /etc/csh.login
if ( $USER == "oracle" ) then
limit maxproc 16384
limit descriptors 65536
umask 022
endif

vi /etc/pam.d/login
session    required     pam_limits.so


vi /etc/security/limits.conf
oracle  soft     nofile 655360
oracle  hard     nofile 635360
oracle  soft    nproc   10240
oracle  hard    nproc   16384

3.配置网络
127.0.0.1     linux1 localhost.localdomain localhost
需要将其删除成如***意上面的linux1被删除): 
127.0.0.1     localhost.localdomain localhost
如果 RAC 节点名出现在回送地址中,您在 RAC 安装期间将接收到以下错误信息: 
ORA-00603:ORACLE server session terminated by fatal error
或 
ORA-29702:error occurred in Cluster Group Service operation

在RAC1中,需要配置两个网段(RAC2也一样)

192.168.56.101 是公有网段

10.10.10.11 是私有网段

在RAC1中,配置两个文件可以达到修改IP的目的(RAC2中也如此类似操作)

vi  /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=none
HWADDR=08:00:27:65:d4:be
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
IPADDR=192.168.56.101
NETMASK=255.255.255.0
GATEWAY=192.168.56.1

vi  /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth1
BOOTPROTO=static
ONBOOT=yes
HWADDR=08:00:27:5f:b7:85
IPADDR=10.10.10.11
NETMASK=255.255.255.0

之后,重启IP,使之生效。

service network restart

 

vi /etc/hosts

127.0.0.1  localhost.localdomain localhost
::1              localhost6.localdomain6  localhost6

#rac1
192.168.56.101 rac1
192.168.56.111 rac1vip
10.10.10.11    rac1priv
#rac2
192.168.56.102 rac2
192.168.56.222 rac2vip
10.10.10.22    rac2priv

4.创建用户,用户组

/usr/sbin/groupadd -g 1000 oinstall
/usr/sbin/groupadd -g 1200 dba
/usr/sbin/useradd -u 555 -g oinstall -G dba oracle

 

两边的用户id,组id 要一样

mkdir -p   /u01/app/oracle/product/10.2/db_1

mkdir -p   /u01/app/oracle/product/10.2/crs
chown -R oracle:oinstall /u01
chmod -R 775 /u01

vi /home/oracle/.bash_profile

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2/db_1
export ORA_CRS_HOME=$ORACLE_BASE/product/10.2/crs
export ORACLE_TERM=xterm
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
export PATH=$PATH:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:$PATH

5.配置raw或 ocfs2
首先,添加共享存储。

从oss.oracle.com下载ocfs2软件

注意:两个节点都要装这三个软件

使用此命令查看 uname -a   注意下载的内核要一致,一个字母都不要差
安装ocfs2
ocfs2-2.6.9-22.ELsmp-1.0.7-1.x86_64.rpm 
还将需要下载以下两个支持文件(这两个与内核版本无关): 
ocfs2console-1.0.2-1.x86_64.rpm 
ocfs2-tools-1.0.2-1.x86_64.rpm

root用户到文件所在的目录  rpm -Uvh *.rpm  即可安装

 

使用root用户配置ocfs2
/etc/init.d/o2cb configure   //一直回车,有失败也不用管
/etc/init.d/o2cb enable         //一直回车,有失败也不用管

  

使用root用户调出图形界面添加节点信息,配置节点,会弹出图形界面(在一个节点配置即可,一定要先加节点才能mount)
/usr/sbin/ocfs2console 

注意:

1)name 一定要是主机名

2)ip 一定要是内部通讯的

可以手工配置,也可以在图形界面设置

通过如下命令可以查看是否两边是否一定

cd /etc/ocfs2 

more *

/etc/init.d/o2cb config    //后台服务器

(如果之前没有格式化,可以在ocfs2界面格式化,)

 

使用root用户格式化磁盘为ocfs2格式(在一个节点上格式化就可以了)


mkfs.ocfs2 -L "clusterfiles" /dev/sdb    //只需要一个节点运行此命令即可

(

之前一定要把防火墙关闭,要不然,mount不上

chkconfig --list|grep ip

此命令一定要是off的

chkconfig --level 2345 ip6tables off

chkconfig --level 2345 iptables off

service iptables stop

service ip6tables stop

)

mkdir   /oradata    //两个节点都要操作此命令

之后要改权限,改成oracle所有。


mount -o datavolume,nointr -t ocfs2 /dev/sdb /oradata   //两个节点都要操作此命令

df -h 查看是否成功挂载

再到另外一个节点查看 mount

之后运行如下命令使其 online (两个节点都要运行此命令)

cd /etc/init.d/

./o2cb online

可以通过 如下查看是online(两个节点都要online才行)

cd /etc/init.d/

./o2cb    //命令可以不记全,只输入此,随后又提示。

 

 


将 OCFS 配置为在启动时自动载入 
我们需要在集群中的所有节点上以 root 用户帐户的身份运行以下命令
export PATH=$PATH:/sbin:/usr/sbin


 

6.配置Hangcheck 计时器
[[email protected] /]# vi /etc/rc.local

增加:

modprobe hangcheck-timer hangcheck-tick=30 hangcheck_margin=180

这个增加后,记住一定要重新或者执行生效啊!

要立即加载模块,执行

[[email protected] ~]# modprobe -v hangcheck-timer

查看是否执行成功,下面为成功

[[email protected] ~]# lsmod | grep hangcheck_timer

hangcheck_timer         8153  0

 

7.

使用root用户mount集群文件系统
echo "mount -o datavolume,nointr -t ocfs2 /dev/sdb /oradata" >> /etc/rc.local
echo "chown –R oracle:dba /oradata" >> /etc/rc.local
echo "chmod –R 775 /oradata" >> /etc/rc.local

 

8 . 配置互信(一定要是oracle用户,两个节点都要做。)
/usr/bin/ssh-****** -t rsa
/usr/bin/ssh-****** -t dsa
把4个文件合成一个文件

注意权限要是是644

chmod 644 authorized_keys

在节点RAC2进行的操作

 [[email protected] ~]$ ls -a
.   .bash_history  .bash_profile  .emacs  .mozilla  .viminfo
..  .bash_logout   .bashrc        .kde    .ssh      .Xauthority


[[email protected] ~]$ cd .ssh

[[email protected] .ssh]$ ls
id_dsa  id_dsa.pub  id_rsa  id_rsa.pub

[[email protected] .ssh]$ scp id_dsa.pub rac1:/home/oracle/.ssh/id_dsa.pub2
[email protected]'s password: 
id_dsa.pub                                         100%  601     0.6KB/s   00:00   

[[email protected] .ssh]$ ls
id_dsa  id_dsa.pub  id_rsa  id_rsa.pub  known_hosts

[[email protected] .ssh]$ scp id_rsa.pub rac1:/home/oracle/.ssh/id_rsa.pub2
[email protected]'s password: 
id_rsa.pub

再到RAC1节点
cat id_dsa.pub  id_dsa.pub2  id_rsa.pub  id_rsa.pub2 > authorized_keys

scp authorized_keys  rac2:/home/oracle/.ssh

 

之后要测试一下(如果都不需要密码,得到时间后。就说明ssh 对等性配置成功。)

[[email protected] ~]$ ssh rac1 date

[[email protected] ~]$ ssh rac2 date
Sat Sep 14 16:03:58 CST 2013

[[email protected] ~]$ ssh rac1priv date
Sat Sep 14 16:04:59 CST 2013

[[email protected] ~]$ ssh rac2priv date
The authenticity of host 'rac2priv (10.10.10.22)' can't be established.
RSA key fingerprint is db:ad:62:77:5a:b5:d6:8f:c6:55:a9:64:61:9b:39:bc.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rac2priv,10.10.10.22' (RSA) to the list of known hosts.
Sat Sep 14 16:05:09 CST 2013

 

[[email protected] ~]$ ssh rac1 date
Sat Sep 14 16:06:54 CST 2013


[[email protected] ~]$ ssh rac2 date
Sat Sep 14 16:09:30 CST 2013

[[email protected] ~]$ ssh rac1priv date
Sat Sep 14 16:09:55 CST 2013


[[email protected] ~]$ ssh rac2priv date
The authenticity of host 'rac2priv (10.10.10.22)' can't be established.
RSA key fingerprint is db:ad:62:77:5a:b5:d6:8f:c6:55:a9:64:61:9b:39:bc.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rac2priv,10.10.10.22' (RSA) to the list of known hosts.
Sat Sep 14 16:10:03 CST 2013

 

请注意,当您使用 ssh 第一次访问远程主机时,其 RSA **将是未知的,从而将提示您确认是否希望连接该主机。 SSH 将记录该远程主机的 RSA **,并在以后连接该主机时不再做出相关提示。 
在第一个主机上,以 oracle 用户身份登录
ssh rac1
ssh rac1priv
ssh rac2
ssh rac2priv

在第二个主机上,以 oracle 用户身份登录
ssh rac1
ssh rac1priv
ssh rac2
ssh rac2priv


9.安装crs(一个节点安装就可以了)

 linux 10201 ocfs RAC 安装+升级到10205

 

path要改一下,不能放在同一个目录

 linux 10201 ocfs RAC 安装+升级到10205

 linux 10201 ocfs RAC 安装+升级到10205

 

上面这里看到,要与hosts要严格一致

 

linux 10201 ocfs RAC 安装+升级到10205

 

 

上面的文件名字可以随便取,但是必须要有这个目录,文件可以他会自己生成。

 linux 10201 ocfs RAC 安装+升级到10205

 

 

之后会有提示执行两个脚本,两个节点都要执行这两个脚本

执行的顺序是:RAC1执行第一个脚本,RAC2执行第一个脚本,RAC1执行第二个脚本,RAC2执行第二个脚本

出现如下,则为正常:

 linux 10201 ocfs RAC 安装+升级到10205

linux 10201 ocfs RAC 安装+升级到10205

 

 

执行完两个脚本后,

用root用户

cd /u01/app/oracle/product/10.2/crs/bin

vi vipca加一行(两个节点都要做 )

unset LD_ASSUME_KERNEL

 

 linux 10201 ocfs RAC 安装+升级到10205

 

 

[[email protected] bin]# ./oifcfg getif    //查看是否有信息

[[email protected] bin]# ./oifcfg setif -global eth0/192.168.56.0:public

[[email protected] bin]# ./oifcfg setif -global eth1/10.10.10.0:cluster_interconnect

[[email protected] bin]# ./vipca     //在第一个节点上做

  linux 10201 ocfs RAC 安装+升级到10205

 linux 10201 ocfs RAC 安装+升级到10205

 

 

 

装完软件后起的服务。如果ocr损坏,这些服务就起不来。

 linux 10201 ocfs RAC 安装+升级到10205

 

10.安装数据库软件
11.升级集群软件和数据库软件。

注意,集群升级软件和数据库升级软件是同一个。

先装哪个,先升级哪个。

注意下面的一定要看清楚是集群软件还是数据库软件。

 linux 10201 ocfs RAC 安装+升级到10205

 

这里下面的是集群软件。我们选择先升级集群软件。

 linux 10201 ocfs RAC 安装+升级到10205

 

 linux 10201 ocfs RAC 安装+升级到10205

 

一定要看清楚里面说什么,不能退出。里面会提示执行脚本。

第一个节点执行完这两个脚本,然后再到第二个节点执行两个脚本。

 linux 10201 ocfs RAC 安装+升级到10205

 

 

当升级完成后,这些服务会起来。

12,升级完成,配监听(配完监听才能建库)

配完监听会发现,多了两个监听的服务

 linux 10201 ocfs RAC 安装+升级到10205

 

13,建库

一般都要选择这个

 linux 10201 ocfs RAC 安装+升级到10205

 

 

字符集一定是开发要求是什么字符集,就选什么字符集,一般来说,选择 UTF8

 linux 10201 ocfs RAC 安装+升级到10205

 

安装中,如果报如下错打一个补丁就可以了。

 linux 10201 ocfs RAC 安装+升级到10205

 

退出的时候,会停留很长时间,这是因为他要停了之后,再起来。

 

相关文章: