Oracle10g Rac Configuration For Linux X86

1,854 views

Published on

Oracle10g Rac Configuration For Linux X86

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,854
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
57
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Oracle10g Rac Configuration For Linux X86

  1. 1. 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 页
  2. 2. 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 页
  3. 3. 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 页
  4. 4. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 成功。 然后进行分区操作 [root@node1~]#fdisk /dev/emcpowera1 其它分区一样 /ocfs_data /ocfs_index /ocfs_log 1.5 创建组和用户 注:此操作需要在每个个节点都要操作 第 4 页,共 51 页
  5. 5. 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 页
  6. 6. 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 页
  7. 7. 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 页
  8. 8. 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 页
  9. 9. 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 页
  10. 10. 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 页
  11. 11. 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 页
  12. 12. 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 页
  13. 13. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 出现下图所示的格式化状态 格式化完成后如下图所示 第 13 页,共 51 页
  14. 14. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 2.3 配置集群节点 格式化完成后,开始配置集群节点(在 node1 上即可)如下图所示 之后弹出如下窗口 第 14 页,共 51 页
  15. 15. 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 页
  16. 16. 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 页
  17. 17. 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 页
  18. 18. 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 页
  19. 19. 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 页
  20. 20. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 需要用 root 来运行 rootpre.sh 运行之后输入[y] 如下图所示: 点击【Next】出现如下窗口,选择【Product Languages】将【Path】更改为 第 20 页,共 51 页
  21. 21. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- /u01/product/crs 点击【OK】之后如下图所示 第 21 页,共 51 页
  22. 22. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- Oracle Check 一切 ok,点击【Next】,如下图所示 添加节点 2(node2)相关信息如下 第 22 页,共 51 页
  23. 23. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 点击【OK】之后如下图所示 第 23 页,共 51 页
  24. 24. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 点击【Next】,如下所示将 192.168.0.1 编辑为【Public】 点击【OK】如下所示 第 24 页,共 51 页
  25. 25. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 点击【Next】如下图所示操作 其中 normal redundancy(默认方式)表示 Oracle 提供 2 路镜像来保护数据。 external redundancy 表示 Oracle 不帮你管理镜像,功能由外部存储系统实现。 第 25 页,共 51 页
  26. 26. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 这里我们都选择 external redundancy,将其放到公用的存储中。 点击【Next】开始安装 之后,需要用 root 用户在 node1 和 node2 上分别运行 第 26 页,共 51 页
  27. 27. 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 页
  28. 28. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 在 node1 上运行完成之后,在 node2 上运行 第 28 页,共 51 页
  29. 29. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 在节点 2 提示行 Running vipca(silent) for configuring nodeapps 按照提示信息运行 vipca,运行过程如下图所示 注:通常情况下,会在最后一个节点上提示运行 vipca 第 29 页,共 51 页
  30. 30. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 按照提示信息操作,选择所有的网卡 点击【Next】需要输入 Virtural IP 根据/etc/hosts 里的信息输入 IP Alias Name, 这样 ip address 就跟着带了出来。如下所示 第 30 页,共 51 页
  31. 31. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 第 31 页,共 51 页
  32. 32. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 第 32 页,共 51 页
  33. 33. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 安装完之后,在 node1 上点击 ok 后完成安装 第 33 页,共 51 页
  34. 34. 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 页
  35. 35. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 第 35 页,共 51 页
  36. 36. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 第 36 页,共 51 页
  37. 37. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 选择所有的节点,进行安装 第 37 页,共 51 页
  38. 38. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 按照上图填写 group 第 38 页,共 51 页
  39. 39. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 选择仅安装软件,之后通过 dbca 来建库 第 39 页,共 51 页
  40. 40. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 安装过程中提示 用 root 用户 运行 root.sh 分别在 node1 和 node2 上用 root 运行 root.sh 第 40 页,共 51 页
  41. 41. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 第 41 页,共 51 页
  42. 42. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 五、DBCA 创建数据库 第 42 页,共 51 页
  43. 43. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 如上图所示选择所有的节点 第 43 页,共 51 页
  44. 44. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 其它部分略掉,在 Step11 中需要添加 Services name 点击左侧的 Add 按钮出现如下所示的接口, 第 44 页,共 51 页
  45. 45. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 在弹出的窗口中输入 services name 的名字:hft_data 点击【OK】之后如下图所示 第 45 页,共 51 页
  46. 46. Dbabc.net Email : dba@dbabc.net ----------------------------------------------------------------------------------------------------------------- 点击【Next】进入下一步的安装。 在接下来的 dbca 的过程当中会出下如下的错误提示,此错误是由于没有运行 netca 创建 listener 引起的。点击【Yes】,创建默认的 listener。dbca 结束之 后可以通过修改 tnsnames.ora 以及 listener.ora 来解决此 error。 第 46 页,共 51 页
  47. 47. 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 页
  48. 48. 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 页
  49. 49. 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 页
  50. 50. 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 页
  51. 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 页

×