• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Oracle10g Rac Configuration For Linux X86
 

Oracle10g Rac Configuration For Linux X86

on

  • 2,078 views

Oracle10g Rac Configuration For Linux X86

Oracle10g Rac Configuration For Linux X86

Statistics

Views

Total Views
2,078
Views on SlideShare
2,070
Embed Views
8

Actions

Likes
0
Downloads
55
Comments
0

1 Embed 8

http://dbabc.net 8

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Oracle10g Rac Configuration For Linux X86 Oracle10g Rac Configuration For Linux X86 Document Transcript

    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- Oracle10g RAC Configuration for Linux x86_64bit 目录 一、安装前的准备工作 ................................................................................................. 2 1.1 安装 Linux ........................................................................................................ 2 1.2 配置/etc/hosts .................................................................................................... 2 1.3Disable SELinux ................................................................................................ 2 1.4 分区.................................................................................................................... 3 1.5 创建组和用户.................................................................................................... 4 1.6 环境变量配置以及软件包的检查 ................................................................... 6 1.7 ssh 配置 ............................................................................................................. 8 1.7.1 所有节点创建.ssh 目录 ......................................................................... 8 1.7.2 生成密钥对............................................................................................ 8 1.7.3 所有节点查看相关信息 ........................................................................ 9 1.7.4 密钥分发............................................................................................... 10 1.7.5 测试 ssh ................................................................................................ 11 二、OCFS 的安装及配置 ............................................................................................ 11 2.1 安装 OCFS ..................................................................................................... 11 2.2 格式化分区为 OCFS2 格式 ........................................................................... 12 2.3 配置集群节点.................................................................................................. 14 2.4 配置 o2cb......................................................................................................... 17 三、ClusterWare 安装................................................................................................ 18 四、Oracle10g 软件安装 ............................................................................................ 34 六、监听配置以及 RAC 测试 ..................................................................................... 47 6.1 修改 Node1 的 tnsnames.ora 文件 ................................................................ 47 6.2 修改 Node2 的 tnsnames.ora 文件 ................................................................ 48 6.3 修改参数 local_listener .................................................................................. 49 6.4 重新启动所有实例及监听器 ......................................................................... 49 6.5.客户端 tnsname.ora 设置 .............................................................................. 50 6.6.测试 RAC ........................................................................................................ 50 七、RAC 重启命令 ...................................................................................................... 51 八、附:卸载 ClusterWare......................................................................................... 51 第 1 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 一、安装前的准备工作 1.1 安装 Linux 安装过程略,首先确定所安装 Linux 的版本。 本案例的 Linux Red Hat Enterprise Linux AS release 4 (Nahant Update 4) 1.2 配置/etc/hosts 注:此操作需要在每个个节点都要操作 [root@node1 ~]# vi /etc/hosts 注:每个节点都需要一个唯一的公共和专用网际协议 (Internet Protocol, IP) 地址,以及一个附加公共 IP 地址,该附加公共 IP 地址作为客户端连接和连接 故障转移的虚拟 IP 地址。虚拟 IP 地址必须与公共 IP 属于同一个子网。 Hostname 最好用小写 (多个 PUBLIC NIC 的时候最好只用一个, hosts 这里我们 暂时保留) 1.3Disable SELinux 注:此操作需要在每个个节点都要操作 永久性 Disable SELinux: [root@node1 ~]# vi /etc/grub.conf 第 2 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 此处需要注意:在 grub.conf 中 title Red Hat Enterprise Linux AS (2.6.9-42.ELsmp) root (hd0,0) kernel /vmlinuz-2.6.9-42.ELsmp ro root=LABEL=/ rhgb quiet selinux=0 initrd /initrd-2.6.9-42.ELsmp.img title Red Hat Enterprise Linux AS-up (2.6.9-42.EL) root (hd0,0) kernel /vmlinuz-2.6.9-42.EL ro root=LABEL=/ rhgb quiet selinux=0 initrd /initrd-2.6.9-42.EL.imgLinux 其中 Linux 的版本 2.6.9-42.ELsmp 中的 ELsmp 表示 Red Hat Linux kernel that supports symmetric multiprocessing (multiple processor machines) <---- 对 称多处理器机器。2.6.9-42.EL 中的 EL 表示 Red Hat Linux kernel for uniprocessor machines <---- 支持单处理器机器。 为了安全起见最好将这两个 都添加上 selinux=0。 重启机子使得 selinux 生效。 1.4 分区 在分区之前需要安装 Powerpath 软件。 插入 Powe rpath 软件光盘 进入光盘的目录 cd /media/cdrom/LINUX/2.6/pp5.0.x/rhel 找到 EMCpower.LINUX-5.0.0-157.rhel.x86_64.rpm 使用以下命令进行安装 rpm -ivh EMCpower.LINUX-5.0.0-157.rhel.x86_64.rpm emcpreg -install 输入 *24 位序列号 安装完毕之后重启机子,重启之后通过 powermt display dev=all 检查是否安装 第 3 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 成功。 然后进行分区操作 [root@node1~]#fdisk /dev/emcpowera1 其它分区一样 /ocfs_data /ocfs_index /ocfs_log 1.5 创建组和用户 注:此操作需要在每个个节点都要操作 第 4 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- [root@node1 ~]# groupadd oinstall [root@node1 ~]# groupadd -g 500 dba [root@node1 ~]# groupadd -g 501 oinstall [root@node1 ~]# useradd -u 500 -g dba -G oinstall oracle [root@node1 ~]# 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. 注:dba 是 Primary Group Oracle 环境变量的设置: 修改 oracle 用户下的.bash_profile 在.bash_profile 下添加如下信息 if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi # Set Oracle Environment ORACLE_HOME=/u01/product/oracle;export ORACLE_HOME ORACLE_SID=racsid1;export ORACLE_SID ORACLE_OWNER=oracle;export ORACLE_OWNER ORACLE_BASE=/u01/product;export ORACLE_BASE ORACLE_TERM=vt100;export ORACLE_TERM LD_LIBRARY_PATH=$ORACLE_HOME/lib;export LD_LIBRARY_PATH set -u PS1=`hostname`'<$PWD>$';export PS1 EDITOR=/bin/vi; export EDITOR JAVA_HOME=/usr/local/java;export JAVA_HOME ORA_NLS33=/u01/product/oracle/ocommon/nls/admin/data;export ORA_NLS33 CLASSPATH=/u01/product/oracle/jdbc/lib/classesl11.zip:/usr/local/java; export DISPLAY=127.0.0.1:0.0 export LD_ASSUME_KERNEL=2.6.9 第 5 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- PATH=$ORACLE_HOME/bin:$JAVA_HOME/bin:$PATH:/u01/product/crs/bin:.;expo rt PATH cat .bash_profile 1.6 环境变量配置以及软件包的检查 注:此操作需要在每个个节点都要操作 确定以下软件包必须安装,检查是否安装软件包的命令#rpm -qa|grep compat 如果有没安装的软件请执行 #rpm –ivh xxxx 安装软件包 或者: rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})n' binutils compat-db compat- libstdc++-296 control-center gcc gcc-c++ glibc glibc-common gnome- libs libstdc++ libstdc++-devel make pdksh sysstat xscreensaver setarch binutils-2.15.92.0.2-21 compat-db-4.1.25-9 第 6 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- control-center-2.8.0-12.rhel4.5 gcc-3.4.6-3 gcc-c++-3.4.6-3 glibc-2.3.4-2.25 glibc-common-2.3.4-2.25 gnome-libs-1.4.1.2.90-44.1 libstdc++-3.4.6-3 libstdc++-3.4.6-3 make-3.80-6.EL4 pdksh-5.2.14-30.3 sysstat-5.0.5-11.rhel4 xscreensaver-4.18-5.rhel4.11 libaio-0.3.105-2 libaio-devel-0.3.105-2 #chown –R oracle.dba /u01 #chmod 755 /u01 #chown –R oracle.dba /ocfs_data #chmod 755 /ocfs_data 修改内核参数 Vi /etc/sysctl.conf,增加以下各行 kernel.shmall = 2097152 kernel.shmmax = 4294967296 # 此处的值 是物理内存的一半 kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default = 262144 net.core.rmem_max = 262144 net.core.wmem_default = 262144 net.core.wmem_max = 262144 修改后运行 sysctl -p 命令使得内核改变立即生效 设置/etc/security/limits.conf, #vi /etc/security/limits.conf 加入: oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 修改/etc/pam.d/login 第 7 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 添加 Session required pam_limits.so 1.7 ssh 配置 1.7.1所有节点创建.ssh目录 Node1 node1</home/oracle>$pwd /home/oracle node1</home/oracle>$mkdir .ssh node1</home/oracle>$chmod 700 .ssh node1</home/oracle>$ Node2 node2</home/oracle>$pwd /home/oracle node2</home/oracle>$mkdir .ssh node2</home/oracle>$chmod 700 .ssh node2</home/oracle>$ 1.7.2 生成密钥对 Node1 node1</home/oracle>$ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/oracle/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/oracle/.ssh/id_rsa. Your public key has been saved in /home/oracle/.ssh/id_rsa.pub. The key fingerprint is: d8:9c:2d:2f:01:45:e7:43:5b:8f:9c:de:26:39:bf:e0 oracle@node1 node1</home/oracle>$ node1</home/oracle>$ssh-keygen -t dsa Generating public/private dsa key pair. Enter file in which to save the key (/home/oracle/.ssh/id_dsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/oracle/.ssh/id_dsa. Your public key has been saved in /home/oracle/.ssh/id_dsa.pub. The key fingerprint is: 17:70:f5:02:ab:ce:e5:d9:79:b6:1e:d4:ff:65:33:8b oracle@node1 Node2 第 8 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- node2</home/oracle>$ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/oracle/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/oracle/.ssh/id_rsa. Your public key has been saved in /home/oracle/.ssh/id_rsa.pub. The key fingerprint is: b7:6b:33:7c:04:ea:d5:43:bc:6c:1d:b1:3c:b3:a5:59 oracle@node2 node2</home/oracle>$ node2</home/oracle>$ssh-keygen -t dsa Generating public/private dsa key pair. Enter file in which to save the key (/home/oracle/.ssh/id_dsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/oracle/.ssh/id_dsa. Your public key has been saved in /home/oracle/.ssh/id_dsa.pub. The key fingerprint is: ae:0a:a7:a7:4c:d3:50:3f:7e:e8:11:8e:53:ea:97:47 oracle@node2 1.7.3所有节点查看相关信息 Node1 node1</home/oracle/.ssh>$pwd /home/oracle/.ssh node1</home/oracle/.ssh>$ls –alh total 24K drwx------ 2 oracle dba 4.0K Nov 3 10:34 . drwx------ 23 oracle dba 4.0K Nov 3 10:30 .. -rw------- 1 oracle dba 668 Nov 3 10:34 id_dsa -rw-r--r-- 1 oracle dba 602 Nov 3 10:34 id_dsa.pub -rw------- 1 oracle dba 887 Nov 3 10:33 id_rsa -rw-r--r-- 1 oracle dba 222 Nov 3 10:33 id_rsa.pub Node2 node2</home/oracle/.ssh>$pwd /home/oracle/.ssh node2</home/oracle/.ssh>$ls –alh total 24K drwx------ 2 oracle dba 4.0K Nov 3 10:45 . drwx------ 20 oracle dba 4.0K Nov 3 10:31 .. -rw------- 1 oracle dba 672 Nov 3 10:45 id_dsa 第 9 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- -rw-r--r-- 1 oracle dba 602 Nov 3 10:45 id_dsa.pub -rw------- 1 oracle dba 887 Nov 3 10:45 id_rsa -rw-r--r-- 1 oracle dba 222 Nov 3 10:45 id_rsa.pub 1.7.4密钥分发 Node1 node1</home/oracle/.ssh>$ssh node1 cat /home/oracle/.ssh/id_rsa.pub >>authorized_keys The authenticity of host 'node1 (192.168.0.25)' can't be established. RSA key fingerprint is f8:93:51:cd:af:ee:81:a0:f6:eb:b5:14:58:f2:a5:0a. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'node1,192.168.0.25' (RSA) to the list of known hosts. oracle@node1's password: node1</home/oracle/.ssh>$ssh node1 cat /home/oracle/.ssh/id_dsa.pub >>authorized_keys node1</home/oracle/.ssh>$ssh node2 cat /home/oracle/.ssh/id_rsa.pub >>authorized_keys The authenticity of host 'node2 (192.168.0.26)' can't be established. RSA key fingerprint is 30:84:8c:43:58:a3:0a:8d:07:49:d3:4c:51:37:18:91. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'node2,192.168.0.26' (RSA) to the list of known hosts. oracle@node2's password: node1</home/oracle/.ssh>$ssh node2 cat /home/oracle/.ssh/id_dsa.pub >>authorized_keys oracle@node2's password: node1</home/oracle/.ssh>$ node1</home/oracle/.ssh>$scp authorized_keys node2:/home/oracle/.ssh oracle@node2's password: authorized_keys 100% 1648 1.6KB/s 00:00 Node2 node2</home/oracle/.ssh>$ls –alh total 28K drwx------ 2 oracle dba 4.0K Nov 3 11:08 . drwx------ 20 oracle dba 4.0K Nov 3 10:31 .. -rw-r--r-- 1 oracle dba 1.7K Nov 3 11:08 authorized_keys -rw------- 1 oracle dba 672 Nov 3 10:45 id_dsa 第 10 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- -rw-r--r-- 1 oracle dba 602 Nov 3 10:45 id_dsa.pub -rw------- 1 oracle dba 887 Nov 3 10:45 id_rsa -rw-r--r-- 1 oracle dba 222 Nov 3 10:45 id_rsa.pub node2</home/oracle/.ssh>$chmod 600 authorized_keys 1.7.5测试ssh 在 node1 上:node1</home/oracle/.ssh>$ssh node2 date Mon Nov 3 11:12:12 CST 2008 同样在 node2 上:node2</home/oracle>$ssh node1 date Tue Nov 4 14:05:56 CST 2008 不需要输入密码说明配置 ssh OK 二、OCFS的安装及配置 2.1 安装 OCFS 注:此操作需要在每个个节点都要操作。 首先要选择正确的 OCFS 版本。 OCFS 的版本要与 Linux 的版本的相符合。建议从 http://oss.oracle.com/ 下载 node1</home/oracle>$uname -a Linux node1 2.6.9-42.ELsmp #1 SMP Wed Jul 12 23:32:02 EDT 2006 x86_64 x86_64 x86_64 GNU/Linux 与此 Linux 想对应的 OCFS 的软件 版本是 ocfs2‐tools‐1.2.7‐1.el4.x86_64.rpm ocfs2-2.6.9-42.ELsmp-1.2.5-6.x86_64.rpm 一定要与 Linux 的相同 ocfs2console‐1.2.7‐1.el4.x86_64.rpm 注:ocfs2-2.6.9-42.ELsmp-1.2.5-6.x86_64.rpm 的版本一定要与 Linux 的版本 相同,而 ocfs2‐tools 和 ocfs2console 则不需要。 首先在 node1 上安装 [root@node1 ~]# rpm -ivh ocfs2-tools-1.2.7-1.el4.x86_64.rpm Preparing... ########################################### [100%] 1:ocfs2-tools ########################################### [100%] [root@node1 ~]# [root@node1 ~]# rpm -ivh ocfs2-2.6.9-42.ELsmp-1.2.7-1.el4.x86_64.rpm Preparing... ########################################### [100%] 1:ocfs2-2.6.9-42.ELsmp################################# [100%] [root@node1 ~]# rpm -ivh ocfs2console-1.2.7-1.el4.x86_64.rpm Preparing... ########################################### [100%] 1:ocfs2console ########################################### [100%] 然后再 node2 上安装 第 11 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- [root@node2 ~]# rpm -ivh ocfs2-tools-1.2.7-1.el4.x86_64.rpm Preparing... ########################################### [100%] 1:ocfs2-tools ########################################### [100%] [root@node2 ~]# rpm -ivh ocfs2-2.6.9-42.ELsmp-1.2.7-1.el4.x86_64.rpm Preparing... ########################################### [100%] 1:ocfs2-2.6.9-42.ELsmp################################## [100%] [root@node2 ~]# rpm -ivh ocfs2console-1.2.7-1.el4.x86_64.rpm Preparing... ########################################### [100%] 1:ocfs2console ########################################### [100%] 当然你也可以使用 rmp –ivh ocfs* 来安装全部的软件。 2.2 格式化分区为 OCFS2 格式 在 node1 上用 root 用户运行 ocfs2console 然后点击 TasksFormat 出现如下图 所示接口 [root@node1 ~]# ocfs2console 点击 OK 后,如下图所示点击 YES 第 12 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 出现下图所示的格式化状态 格式化完成后如下图所示 第 13 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 2.3 配置集群节点 格式化完成后,开始配置集群节点(在 node1 上即可)如下图所示 之后弹出如下窗口 第 14 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 点击 Add 如下所示 添加物理主机网卡 ip 地址及主机 Host Name 。注:此 ip 是 eth0 上的 ip 地址 然后接着 add 节点,然后同样加入节点 2 的物理主机网卡位元元址及主机 Host Name (就是主机名称) 。如果有第三个节点,也需要加入。依次类推。 确认 “apply”的时候如果报错: o2cb_ctl: Unable to access cluster service while creating node 那么需要到 /etc/ocfs2/ 查看 cluster.conf 是否有内容,如果有,全部删除掉。 然后继续上面的一步,加入两个节点的 Private IP 及 Public Host Name. 一般 第 15 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 这个时候 APPLY 不会报错,而会出现以下的 OK 的画面。 而且其中的 active 及 Node 的下面会有内容出现。见下图: 在 node1 上查看/etc/ocfs2/cluster.conf 如下所示 在 node1 上利用接口上传配置文件到其它节点: # ocfs2console 然后选择 Cluster ‐> Propagate Configuration„„ 所有都 finished, 然后 File‐>Quit 第 16 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 开始测试及配置 O2CB ,当然这一步运行没有问题的前提是前面的 ocfs2 配置完 全没有问题。在所有节点上,enable cluster stack . 测试方法: [root@node1 ocfs2]# /etc/init.d/o2cb enable Writing O2CB configuration: OK O2CB cluster ocfs2 already online 2.4 配置 o2cb 在所有的节点上配置 [root@node1 ~]# /etc/init.d/o2cb configure Configuring the O2CB driver. 第 17 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- This will configure the on-boot properties of the O2CB driver. The following questions will determine whether the driver is loaded on boot. The current values will be shown in brackets ('[]'). Hitting <ENTER> without typing an answer will keep that current value. Ctrl-C will abort. Load O2CB driver on boot (y/n) [y]: y Cluster to start on boot (Enter "none" to clear) [ocfs2]: Specify heartbeat dead threshold (>=7) [31]: Specify network idle timeout in ms (>=5000) [30000]: Specify network keepalive delay in ms (>=1000) [2000]: Specify network reconnect delay in ms (>=2000) [2000]: Writing O2CB configuration: OK O2CB cluster ocfs2 already online 同样在 node2 上运行以上命令。 测试 o2cb 可以通过以下命令来关闭,启动,查看 o2cb 的状态。目前启动状态。 [root@node1 ~]# /etc/init.d/o2cb stop [root@node1 ~]# /etc/init.d/o2cb start 一切 ok 之后,开始挂载 ocfs2 分区 在每个节点上建立挂载点目录,并给权限(每个节点), # mkdir ‐p /ocfs_data /ocfs_index /ocfs_log # chown ‐R oracle.dba /ocfs_data /ocfs_index /ocfs_log # chmod 775 /ocfs_data /ocfs_index /ocfs_log 然后在每个节点,修改 /etc/fstab 档,添加以下存储系统(每个节点) /dev/emcpowera1 /ocfs_data ocfs2 _netdev,datavolume,nointr 0 0 /dev/emcpowerb1 /ocfs_index ocfs2 _netdev,datavolume,nointr 0 0 /dev/emcpowerc1 /ocfs_log ocfs2 _netdev,datavolume,nointr 0 0 在节点 1 上运行 # mount ‐a ‐t ocfs2 查看是否能挂载,df ‐h 可以看到。 重新启动几次,查看是否能自动加载新增加的文件系统。 三、ClusterWare 安装 在安装之前首先要检查所有的节点是否时间同步。 通过 ntpdate 10.161.8.200 命令在所有的节点上运行。 如果时间不同步的话在安装 cluster 的过程中会出错。一定要时间同步切记。 第 18 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 为了检查安装 ClusterWare 需要的环境参数是否完整,可以通过运行 sh runcluvfy.sh stage -pre crsinst -n node1,node2 来检查安装之前的条件。 此步骤需要用 oracle 用户来执行 通过 sh runcluvfy.sh 检查的过程中有两个 oracle 的 bug: 1.) ERROR: Could not find a suitable set of interfaces for VIPs. Node connectivity check failed. 2.)Membership check for user "oracle" in group "oinstall" [as Primary] failed. Check failed on nodes: node2,node1 Administrative privileges check failed. 此两处是 oracle 的 bug,其它的检测项目都应该是 pass。 最后开始安装 ClusterWare[以 oracle 用户执行] . 在 node1 上面: 将 clusterware 的 zip 文件解压(gunzip)为 10201_clusterware_linux_x86_64.cpio 然后使用命令: $ cpio ‐idmv <10201_clusterware_linux_x86_64.cpio 解压为 clusterware 目录 。 然后在图形接口下开始执行(在节点 1 上执行): 第 19 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 需要用 root 来运行 rootpre.sh 运行之后输入[y] 如下图所示: 点击【Next】出现如下窗口,选择【Product Languages】将【Path】更改为 第 20 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- /u01/product/crs 点击【OK】之后如下图所示 第 21 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- Oracle Check 一切 ok,点击【Next】,如下图所示 添加节点 2(node2)相关信息如下 第 22 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 点击【OK】之后如下图所示 第 23 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 点击【Next】,如下所示将 192.168.0.1 编辑为【Public】 点击【OK】如下所示 第 24 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 点击【Next】如下图所示操作 其中 normal redundancy(默认方式)表示 Oracle 提供 2 路镜像来保护数据。 external redundancy 表示 Oracle 不帮你管理镜像,功能由外部存储系统实现。 第 25 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 这里我们都选择 external redundancy,将其放到公用的存储中。 点击【Next】开始安装 之后,需要用 root 用户在 node1 和 node2 上分别运行 第 26 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- /u01/product/oraInventory/orainstRoot.sh 和 /u01/product/root.sh 注意运行的顺序,先在 node1 上运行,运行状态如下图所示 [root@node1 ~]# sh /u01/product/crs/root.sh 第 27 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 在 node1 上运行完成之后,在 node2 上运行 第 28 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 在节点 2 提示行 Running vipca(silent) for configuring nodeapps 按照提示信息运行 vipca,运行过程如下图所示 注:通常情况下,会在最后一个节点上提示运行 vipca 第 29 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 按照提示信息操作,选择所有的网卡 点击【Next】需要输入 Virtural IP 根据/etc/hosts 里的信息输入 IP Alias Name, 这样 ip address 就跟着带了出来。如下所示 第 30 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 第 31 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 第 32 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 安装完之后,在 node1 上点击 ok 后完成安装 第 33 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 到此 Cluster Ware 安装完成。 四、Oracle10g 软件安装 node1</home/oracle/rac>$cpio - idmv<10201_database_linux_x86_64.cpio node1</home/oracle/rac>$cd database node1</home/oracle/rac>$ls 第 34 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 第 35 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 第 36 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 选择所有的节点,进行安装 第 37 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 按照上图填写 group 第 38 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 选择仅安装软件,之后通过 dbca 来建库 第 39 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 安装过程中提示 用 root 用户 运行 root.sh 分别在 node1 和 node2 上用 root 运行 root.sh 第 40 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 第 41 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 五、DBCA 创建数据库 第 42 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 如上图所示选择所有的节点 第 43 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 其它部分略掉,在 Step11 中需要添加 Services name 点击左侧的 Add 按钮出现如下所示的接口, 第 44 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 在弹出的窗口中输入 services name 的名字:hft_data 点击【OK】之后如下图所示 第 45 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 点击【Next】进入下一步的安装。 在接下来的 dbca 的过程当中会出下如下的错误提示,此错误是由于没有运行 netca 创建 listener 引起的。点击【Yes】,创建默认的 listener。dbca 结束之 后可以通过修改 tnsnames.ora 以及 listener.ora 来解决此 error。 第 46 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 点击【Exit】dbca 建库完成 Dbca 结束之后可以进入 sqlplus 查看一下相关的参数。 六、监听配置以及RAC测试 配置相关参数档:listener.ora , tnsnames.ora SQL> show parameter listener NAME TYPE VALUE -------------------------- -------- ----------- ---------- local_listener string remote_listener string LISTENERS_RACNAME SQL> 开始修改及配置节点 1, 的 spfile 中的 local_listener, 以及 Listener.ora 、 2 tnsnames.ora 6.1 修改 Node1 的 tnsnames.ora 文件 确认 tnsnames.ora 已经备份,然后在节点 1 上 tnsnames.ora 中修改。 ①.在 tnsnames.ora 添加 第 47 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- LOCAL_RAC = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.25)(PORT = 1521)) ) 此处的 host 需要填写 node1 物理主机的真实 ip(即 eth0 上的 ip) ②.将 LISTENERS_RACNAME 的主机名修改成虚拟 ip LISTENERS_RACNAME = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.30)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.31)(PORT = 1521)) ) ③.修改 node1 listener.ora 将主机名换成虚拟 ip 即可 LISTENER_NODE1 = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.30)(PORT = 1521)(IP = FIRST)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.25)(PORT = 1521)(IP = FIRST)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) ) ) 6.2 修改 Node2 的 tnsnames.ora 文件 确认 tnsnames.ora 已经备份,然后在 node2 上 tnsnames.ora 中修改。 ①.在 tnsnames.ora 添加 LOCAL_RAC = (ADDRESS_LIST = 第 48 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.26)(PORT = 1521)) ) 此处的 host 需要填写 node2 物理主机的真实 ip(即 eth0 上的 ip) ②.将 LISTENERS_RACNAME 的主机名修改成虚拟 ip LISTENERS_RACNAME = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.30)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.31)(PORT = 1521)) ) ③ 修改 node2 listener.ora 将主机名换成虚拟 ip 即可 LISTENER_NODE1 = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.31)(PORT = 1521)(IP = FIRST)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.26)(PORT = 1521)(IP = FIRST)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) ) ) 6.3 修改参数 local_listener SQL> alter system set local_listener='LOCAL_RAC' scope=both ; 注:节点 1 上执行就行了,因为 spfile 共享 6.4 重新启动所有实例及监听器 每个节点上重新启动所有实例及监听器 第 49 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 6.5.客户端 tnsname.ora 设置 RAC = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.30)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.31)(PORT = 1521)) (FAILOVER = ON) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = hfthrp) ) ) 如果有必要的话也可以设置一个 IP 连接单机 6.6.测试 RAC 配置安装完成。测试如下 node1</home/oracle>$crs_stat -t State 全部显示 online 说明一切 ok 第 50 页,共 51 页
    • Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 七、RAC重启命令 重启 RAC 关闭 RAC: 1.首先关闭 OEM:$emctl start dbconsole 2.关闭数据库:$ srvctl stop database -d db_name 3.关闭 crs:#crsctl stop crs 此处需要用 root 权限,并且需要在全部节 点上执行。 4.重启服务器:#init6 启动 RAC 由于 RAC 开机自动启动,开机后通过运行 crs_stat –t 查看 RAC 是否 完全启动。 如果其 status 是 offline 状态可通过 crs_start Name 来启动。完 整的 Name 可以通过 crs_stat 来查看。如果其 status 是 unknown 状态,首先 通过 crs_stop Name 来关掉 Name,然后再通过 crs_start Name 来启动。 八、附:卸载ClusterWare 如果在安装 clusterware 时如果出现报错现象,需要重新安装时,必须先清 除已经安装的 cluserware,否则可能会影响到下次安装。 运行自身带的卸载工具卸载 然后使用以下命令进行删除 rm -f /etc/init.crs rm -f /etc/init.crsd rm -f /etc/init.cssd rm -f /etc/init.evmd rm -f /etc/oracle/ocr.loc rm -f /etc/rc0.d/K96init.crs rm -f /etc/rc1.d/K96init.crs rm -f /etc/rc2.d/K96init.crs rm -f /etc/rc3.d/S96init.crs rm -f /etc/rc4.d/K96init.crs rm -f /etc/rc6.d/K96init.crs cp -f /etc/inittab.orig /etc/inittab 删除 crs 的安装目录,以及/ocfs_data/crs 下的 ocr.dbf votingdisk 重启机子,重新安装 第 51 页,共 51 页