zoukankan      html  css  js  c++  java
  • ORACLE RAC如何增加节点

    ORACLE RAC系统是一个可以横向进行扩展的系统,当一个RAC系统计算能力不满足客户的需求时候,增加节点能够快速增加整个系统的计算能力,使得客户系统计算能力得到一定的提升,以满足客户不断增长的计算需求。

    一、        增加节点的准备工作

    俗话说,磨刀不误砍柴工,在RAC安装和增加节点过程中,该俗语充分体现了准备工作的重要性。硬件初始化主要包括服务器的安装、存储的连接、网络连接等步骤。本文所基于的基本环境如下:

    1.         原有节点分别为cluster1cluster2

    2.         软件环境如下:

    操作系统:solaris 10 u11

    数据库软件:ORACLE Database 11g

    OS用户: grid用户用于管理clusterwareoracle用户用于数据库

    3.         IP地址具体规划如下:

    192.168.0.12    cluster1  

    192.168.0.13    cluster2

    192.168.0.14    cluster1-vip

    192.168.0.16    cluster2-vip   

    192.168.0.15    cluster1-priv

    192.168.0.17    cluster2-priv

    192.168.0.19    scan-ip

    4.         新节点环境规划:

    操作系统和database软件必须采用原有节点一个版本的软件

    创建gridoracle用户,具体创建步骤参考下节内容

                  IP地址设置为:

                  192.168.0.18  cluster3

                  192.168.0.20  cluster3-vip

                  192.168.0.21  cluster-priv

    u  主机系统环境的设置

    1.  创建用户

     groupadd -g 1000 oinstall

     groupadd -g 1001 dba

     useradd -u 1100 -g dba -G oinstall -d /export/home/grid -m grid

     useradd -u 1101 -g dba -G oinstall -d /export/home/oracle -m oracle

     

    2.设置password

    passwd grid

    passwd oracle

     

    3.创建相应的目录

    mkdir -p /oracle/app/grid

    mkdir -p /oracle/app/11g

    chown -R grid:dba /oracle/app/grid

    chmod -R 775 /oracle/app/grid

     

    mkdir -p ORACLE_BASE=/oracle/app/oracle

    mkdir -p /oracle/app/oracle/product/11.2.0/dbhome_1

    chown –R oracle:dba /oracle/app/oracle

     

    4. grid user用的.profile文件

    ORACLE_BASE=/oracle/app/grid; export ORACLE_BASE

    ORACLE_HOME=/oracle/app/11g; export ORACLE_HOME

    JAVA_HOME=$ORACLE_HOME/jdk; export JAVA_HOME

    #ORACLE_PATH=/oracle/app/oracle/11g/common/oracle/sql; export ORACLE_PATH

    ORACLE_SID=+ASM4; export ORACLE_SID

    ORACLE_TERM=xterm; export ORACLE_TERM

    NLS_DATE_FORMAT="DD-MON-YYYY HH24:MI:SS"; export NLS_DATE_FORMAT

    TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN

    ORA_NLS11=$ORACLE_HOME/nls/data; export ORA_NLS11

    PATH=$PATH:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin:$JAVA_HOME/bin:$HOME/bin:$ORACLE_HOME/bin; export PATH

    LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/oracm/lib:/lib:/usr/lib:/usr/local/lib

    export LD_LIBRARY_PATH

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

    NLS_LANG=American_america.zhs16gbk; export NLS_LANG

    THREADS_FLAG=native; export THREADS_FLAG

    TEMP=/tmp; export TEMP

    TMPDIR=/tmp; export TMPDIR

    # UMASK

    umask 022

     

    5. oracle用户的.profile文件

    ORACLE_BASE=/oracle/app/oracle; export ORACLE_BASE

    ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME

    JAVA_HOME=$ORACLE_HOME/jdk; export JAVA_HOME

    #ORACLE_PATH=/oracle/app/common/oracle/sql; export ORACLE_PATH

    ORACLE_TERM=xterm; export ORACLE_TERM

    ORACLE_SID=yxjb4; export ORACLE_SID

    ORACLE_UNQNAME=yxjb; export ORACLE_UNQNAME

    NLS_DATE_FORMAT="DD-MON-YYYY HH24:MI:SS"; export NLS_DATE_FORMAT

    TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN

    ORA_NLS11=$ORACLE_HOME/nls/data; export ORA_NLS11

    PATH=$PATH:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin:$JAVA_HOME/bin:$HOME/bin:$ORACLE_HOME/bin; export PATH

    LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/oracm/lib:/lib:/usr/lib:/usr/local/lib

    export LD_LIBRARY_PATH

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

    NLS_LANG=American_america.zhs16gbk; export NLS_LANG

    THREADS_FLAG=native; export THREADS_FLAG

    TEMP=/tmp; export TEMP

    TMPDIR=/tmp; export TMPDIR

    # UMASK

    umask 022

     

    6. 修改UDP-TCPkernel参数

    vi /etc/rc3.d/S99NddUDPTCP

    #!/bin/sh

    /usr/sbin/ndd -set /dev/tcp tcp_smallest_anon_port 9000

    /usr/sbin/ndd -set /dev/tcp tcp_largest_anon_port 65500

    /usr/sbin/ndd -set /dev/udp udp_smallest_anon_port 9000

    /usr/sbin/ndd -set /dev/udp udp_largest_anon_port 65500 1.创建用户

     

    chmod +x /etc/rc3.d/S99NddUDPTCP

     

    6.设置主机的存储

    根据具体存储进行设置,将原有ASM使用的磁盘在新节点上更改器属性,OCR的盘更改为gridoinstall,数据盘更改为oracledba,这些盘都这对raw设备进行属性更改,读写属性都修改为660

     

    7.建立grid,oracle用户的ssh信任关系

    具体如何建立ssh信任关系可以参考我的豆丁文档:

    http://www.docin.com/p-656158896.html

     

    二、        增加节点具体步骤:

    准备工作完成后,就可以根据新环境将新节点增加到RAC系统了,RAC增加节点总共分为三步进行,第一步就是将clusterware软件系统进行扩展,将所有11gclusterware软件添加到新节点,第二步就是将ORACLE数据库的软件扩展到新节点,最后一步就是使用dbca创建新节点的数据库实例instance

    1.         Clusterware软件扩展

    软件的扩展就是在新节点上进行CRS软件的安装,此处无需使用原有的软件包来进行runInstaller的安装,只需要在现有的节点上执行脚本即可完成。

     CRS软件的安装用户必须使用grid user,在10g里面还需要将CRS软件的home目录属性修改为grid的,使用完成后,在修改成root用户的。

           以下为执行脚本的具体命令格式:

    /oracle/app/11g/oui/bin/addNode.sh -silent "CLUSTER_NEW_NODES={cluster3}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={cluster3-vip}"

           命令里面只需要将两个option的值改成新节点主机就可以直接执行了,具体的过程可以参考文档后面的附件一。

           根据提示执行root.sh脚本将新节点加入到CRS中去,执行完成后就可以使用crs_stat –t命令查看新节点的crs状态了,root.sh脚本执行情况查阅文档后面的附件二。

     

    2.         ORACLE数据库软件的扩展

    使用oracle用户登录,执行以下脚本,该脚本能够将RAC群集节点上正常节点上的所有软件包远程拷贝到新节点上,无需做其他任何多余操作。

    $  /oracle/app/oracle/product/11.2.0/dbhome_1/oui/bin/addNode.sh

    该脚本运行过程可查阅附件三。

    3.         DBCA创建cluster实例

    CRSORACLE数据库软件扩展到新节点后,crs_stat –t 显示三个节点都正常后,就可以直接使用dbca来创建第三个节点上的数据库实例了,这步骤就比较简单了,但需要注意的时候,dbca图形界面启动后,一定要选择 instance manager,后面选择add instance,后面就是next即可。

  • 相关阅读:
    Android Fragment(一)
    Android github上的好的开源项目汇总
    Android ScrollView 嵌套ListView的替代方案
    Android cannot be cast to android.app.Fragment
    js css加时间戳
    WPF无边框实现拖动效果
    分析器错误消息: 未能加载类型
    微信红包功能(含示例demo)
    ABP缓存示例
    微信白名单配置与检验
  • 原文地址:https://www.cnblogs.com/zwl715/p/3628936.html
Copyright © 2011-2022 走看看