第一步:建立第一台节点机

1).拷贝一台虚拟机做第一个节点,增加host-only的网卡 kudzu工具识别网卡(两都host-only是可以的)。

然后以下步骤修改相应的配置。

etc/hosts内容如下:

127.0.0.1          localhost

# Public

192.168.0.88           pretty1

192.168.0.99           pretty2

#Private

192.168.88.88      pretty1-priv

192.168.88.99      pretty2-priv

#Virtual

192.168.0.188       pretty1-vip

192.168.0.199       pretty2-vip

#NAS

192.168.88.88           nas1

2).修改主机名

hostname pretty1

/etc/sysconfig/network

3).按照10g软件安装修改相关,只是.bash_profile添加修改一些参数

TMP=/tmp; export TMP

TMPDIR=$TMP; export TMPDIR

umask 022

ORACLE_HOSTNAME=pretty1; export ORACLE_HOSTNAME

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME

ORACLE_SID=pretty1; export ORACLE_SID

export ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs

PATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:/usr/sbin:$PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

4).用nfs创建共享磁盘

mkdir /shared_config

mkdir /shared_crs

mkdir /shared_home

mkdir /shared_data

修改 /etc/exports

/shared_config               *(rw,sync,no_wdelay,insecure_locks,no_root_squash)

/shared_crs                  *(rw,sync,no_wdelay,insecure_locks,no_root_squash)

/shared_home                 *(rw,sync,no_wdelay,insecure_locks,no_root_squash)

/shared_data                 *(rw,sync,no_wdelay,insecure_locks,no_root_squash)

启动NFS服务

chkconfig nfs on

service nfs restart

创建oracle目录

mkdir -p /u01/app/crs/product/10.2.0/crs

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

mkdir -p  /u01/oradata

mkdir -p  /u01/shared_config

chown -R oracle:oinstall /u01/app /u01/app/oracle /u01/oradata /u01/shared_config

chmod -R 775 /u01/app /u01/app/oracle /u01/oradata /u01/shared_config

修改 "/etc/fstab"

nas1:/shared_config /u01/shared_config  nfs  rw,bg,hard,nointr,tcp,vers=3,timeo=300,rsize=32768,wsize=32768,actimeo=0  0 0

nas1:/shared_crs    /u01/app/crs/product/10.2.0/crs  nfs  rw,bg,hard,nointr,tcp,vers=3,timeo=300,rsize=32768,wsize=32768,actimeo=0  0 0

nas1:/shared_home   /u01/app/oracle/product/10.2.0/db_1  nfs  rw,bg,hard,nointr,tcp,vers=3,timeo=300,rsize=32768,wsize=32768,actimeo=0  0 0

nas1:/shared_data   /u01/oradata  nfs  rw,bg,hard,nointr,tcp,vers=3,timeo=300,rsize=32768,wsize=32768,actimeo=0  0 0

mount NFS:或 mount -a

mount /u01/shared_config

mount /u01/app/crs/product/10.2.0/crs

mount /u01/app/oracle/product/10.2.0/db_1

mount /u01/oradata

touch /u01/shared_config/crs_configuration

touch /u01/shared_config/voting_disk

chown -R oracle:oinstall /u01/shared_config

chown -R oracle:oinstall /u01/app/crs/product/10.2.0/crs

chown -R oracle:oinstall /u01/app/oracle/product/10.2.0/db_1

chown -R oracle:oinstall /u01/oradata

第二步 将第一台节点机拷贝到第二台节点机,并进行相应的修改关闭第一台虚拟机,把它拷贝到第二台机器

启动第二台机器,注意启动过程中的网卡设置

/home/oracle/.bash_profile   修改ORACLE_HOSTNAME,ORACLE_SID

/etc/exports                 全部删掉

hostname pretty2

/etc/sysconfig/network

第三步 在oracle用户配置两机的相互信任和时间同步(按顺序执行)

   在两个节点上执行

su - oracle

mkdir ~/.ssh

chmod 700 ~/.ssh

/usr/bin/ssh-keygen -t rsa # 接受默认设置

   在pretty1上执行

su - oracle

cd ~/.ssh

cat id_rsa.pub >> authorized_keys

scp authorized_keys pretty2:/u01/oracle/.ssh/

   在pretty2上执行

su - oracle

cd ~/.ssh

cat id_rsa.pub >> authorized_keys

scp authorized_keys pretty1:/u01/oracle/.ssh/

   激活ssh同步(两个节点上执行)

ssh pretty1 date;ssh pretty2 date;ssh pretty2-priv date;ssh pretty1-priv date

exec /usr/bin/ssh-agent $SHELL

/usr/bin/ssh-add

  建立ntp时间同步

在pretty1上启动ntpd

chkconfig ntpd on

service ntpd restart

在pretty2上执行 system-config-date  enable network time protocol 输入第一个节点的IP

每次系统启动自动加载

vi /etc/rc.local

while [ 1 ]; do ntpdate pretty1 1>/dev/null 2>&1; sleep 2; done &

注意:pretty2上的ntpd要关闭

第三步 安装clusterware

指定网络接口用法:

接口名称:eth0

子网: 192.168.0.0

接口类型:Public

接口名称:eth1

子网: 192.168.88.0

接口类型:Private

指定 Oracle 集群注册表 (OCR) 位置:选择 External Redundancy。

指定 OCR 位置:/u01/shared_config/ocr_configuration

指定表决磁盘位置:选择 External Redundancy。

表决磁盘位置:/u01/shared_config/voting_disk

摘要:单击 Install。

执行配置脚本:以 root 用户身份按顺序执行以下脚本(一次执行一个)。在当前脚本完成后,再继续执行下一个脚本。

在 pretty1 上执行 /u01/app/oracle/oraInventory/orainstRoot.sh。

在 pretty2 上执行 /u01/app/oracle/oraInventory/orainstRoot.sh。

在 pretty1 上执行 /u01/app/oracle/product/10.2.0/crs_1/root.sh。

在 pretty2 上执行 /u01/app/oracle/product/10.2.0/crs_1/root.sh。

pretty2 上的 root.sh 脚本会自动调用 VIPCA,但会因为“The given interface(s), "eth0" is not public.Public interfaces should be used to configure virtual IPs.”错误而失败。需要手动运行 VIPCA。

以 root 用户身份在第二个节点上手动调用 VIPCA。

# /u01/app/oracle/product/10.2.0/crs/bin/vipca

欢迎页面:单击 Next。

网络接口:选择 eth0。

集群节点的虚拟 IP:

节点名称:pretty1

IP 别名:pretty1-vip

IP 地址: 192.168.0.188

子网掩码: 255.255.255.0

节点名称:pretty2

IP 别名:pretty2-vip

IP 地址: 192.168.0.199

子网掩码: 255.255.255.0

摘要:单击 Finish。

配置助手进度对话框:配置完成后,单击 OK。

配置结果:单击 Exit。

返回到 pretty1 的执行配置脚本屏幕,然后单击 OK。

配置助手:验证所有检查均成功。OUI 在最后会执行集群件安装后检查。如果 CVU 失败,请更正问题,并以 oracle 用户身份重新运行以下命令:

/u01/app/oracle/product/10.2.0/crs/bin/cluvfy stage -post crsinst -n pretty1,pretty2

安装结束:单击 Exit。

crs_stat -t

用ifconfig查看网络 在主机ping两个虚IP

备份虚拟机

第三步 安装ORACLE数据库软件

名称:OraDb10g_home1

路径:/u01/app/oracle/product/10.2.0/db_1

指定硬件集群安装模式:

选择 Cluster Installation。

单击 Select All。

特定于产品的必要条件检查:

忽略有关物理内存要求的警告。

选择配置选项:

Select the "Install Software only" option, then click the "Next" button.

On the "Summary" screen, click the "Install" button to continue.

第四步 安装ORACLE数据库

运行 DBCA

选择 oracle real application clusters database

create a database

选择所有节点

模板选择 General Purpose

Global Database Name "pretty.loveunix.cn" SID Prefix "pretty"

选择 "Cluster File System"

在创建数据文件位置处选择  "Use Oracle-Managed Files" 输入 "/u01/oradata/" 

数据库内容: 选择或取消选择示例模式。

数据库服务: 单击 Next。稍后,您可以使用 DBCA 或 srvctl 创建或修改其他服务。

初始化参数:选择 Custom。

共享内存管理:Automatic 根据需要修改其余参数。数据库存储:单击 Next。创建选项: 选择 Create Database。

单击 Finish。摘要:单击 OK。

不久就提示创建listener,选默认即可

select instance_name from V$instance;

SELECT * FROM v$active_instances;

sqlplus

[email=sys/qkhhfqp@192.168.0.188:1521/pretty.loveunix.cn]sys/qkhhfqp@192.168.0.188:1521/pretty.loveunix.cn[/email]

as sysdba

sqlplus

[email=sys/qkhhfqp@192.168.0.199:1521/pretty.loveunix.cn]sys/qkhhfqp@192.168.0.199:1521/pretty.loveunix.cn[/email]

as sysdba

select instance_name from V$instance;

经常可以失败问题:时间没同步,ssh pretty1 date;ssh pretty2 date;

共享磁盘,还网络的配置.

先启动pretty1机子,再启动pretty2机子

总结:难点是网络配置,NFS共享磁盘配置和理解

学习几个命令,把几个服务搞清楚,备份恢复与单实例的不同。