ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 简要记录一次2节点rac的安装

简要记录一次2节点rac的安装

原创 Linux操作系统 作者:haha牛 时间:2011-11-27 22:21:11 0 删除 编辑
前期规划:
一、确定rac各个节点的三个IP地址
    node1    publicIP 192.168.1.131   privateIP 10.10.10.131   VIP 192.168.1.31
    node2    publicIP 192.168.1.132   privateIP 10.10.10.132   VIP 192.168.1.32
二、存储规划
    sdb1为裸设备用于ocr,sdc1为裸设备用于votingdisk,sdd1为asm磁盘用于存放数据文件,sde1为asm磁盘用于存放备份等数据
-------------------------------------------------------------------------------------------------------------------
实施阶段
一、系统准备工作
    1、编辑/etc/hosts文件(两个节点都要添加)
       [root@node1 ~]# vi /etc/hosts   --注意要修改 127.0.0.1 为 localhost
       192.168.1.131    node1
       192.168.1.132    node2
       192.168.1.31     node1-vip
       192.168.1.32     node2-vip
       10.10.10.131     node1-priv
       10.10.10.132     node2-priv
     2、检查系统的安装包(两个节点都要做)
       [root@node1 ~]# rpm -qa |grep ****
       binutils-2.15.92.0.2-13.EL4
       compat-db-4.1.25-9
       compat-libstdc++-296-2.96-132.7.2
       control-center-2.8.0-12
       gcc-3.4.3-22.1.EL4
       gcc-c++-3.4.3-22.1.EL44
       glibc-2.3.4-2.9
       glibc-common-2.3.4-2.9
       gnome-libs-1.4.1.2.90-44.1
       libstdc++-3.4.3-22.1
       libstdc++-devel-3.4.3-22.1
       make-3.80-5
       pdksh-5.2.14-30
       sysstat-5.0.5-1
       xscreensaver-4.18-5.rhel4.2
       setarch-1.6-1
    3、创建oracle用户、配置用户等价性(两个节点都要做)
       [root@node1 ~]# groupadd -g 700 dba
       [root@node1 ~]# useradd -u 500 -g dba oracle
       [root@node1 ~]# passwd oracle
       Changing password for user oracle.
       New UNIX password:
       Retype new UNIX password:
       passwd: all authentication tokens updated successfully.
       [oracle@node1 ~]$ vi .bash_profile --配置环境变量(注意node1和node2的ORACLE_SID不能一样)
       umask 022
       export ORACLE_SID=node1
       export ORACLE_BASE=/home/oracle
       export ORACLE_TERM=xterm
       export NLS_LANG=AMERICAMN.AMERICA.ZHS16GBK
       export ORACLE_HOME=/home/oracle/product/database
       export CRS_HOME=/home/oracle/product/crs
       export ORA_NLS33=$ORACLE_HOME/common/nls/admin/data
       export PATH=$ORACLE_HOME/bin:$CRS_HOME/bin:$PATH
       export DISPLAY=192.168.1.102:0.0
       alias  sqlplus='rlwrap sqlplus'
       alias  rman='rlwrap rman'
       alias  lsnrctl='rlwrap lsnrctl'
       [oracle@node1 ~]$ mkdir -p product/database   --创建所需的目录结构、两个节点都要操作
       [oracle@node1 ~]$ cd product/
       [oracle@node1 product]$ mkdir crs
       [oracle@node1 product]$ ll
       drwxr-xr-x  2 oracle dba 4096 Nov 27 14:35 crs
       drwxr-xr-x  2 oracle dba 4096 Nov 27 14:35 database
    4、更改系统的配置   --两个节点都做操作
       [root@node1 ~]# vi /etc/sysctl.conf  --添加如下内容
        kernel.shmall = 2097152
        kernel.shmmax = 2147483648
        kernel.shmmni = 4096
        kernel.sem = 250 32000 100 128
        fs.file-max = 65536
        net.core.rmem_default = 1048576
        net.core.rmem_max = 1048576
        net.core.wmem_default = 262144
        net.core.wmem_max = 262144
       [root@node1 ~]# sysctl -p  --使修改的内容立即生效
       [root@node1 ~]# vi /etc/security/limits.conf  --添加如下内容
        oracle              soft    nproc   2047
        oracle              hard    nproc   16384
        oracle              soft    nofile  1024
        oracle              hard    nofile  65536
       [root@node1 ~]# vi /etc/pam.d/login   --加入如下内容
        session    required     /lib/security/pam_limits.so
        session    required     pam_limits.so
       [root@node1 ~]# 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
     5、配置oracle用户的等价性(两个节点都要操作)
        [oracle@node1 ~]$ mkdir .ssh    --创建.ssh目录
        [oracle@node1 ~]$ chmod 700 .ssh/   --更改权限
        [oracle@node1 ~]$ cd .ssh/
        [oracle@node1 .ssh]$ 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:
        8e:54:fa:37:cd:3e:77:08:c1:de:06:f2:96:98:3f:a7 oracle@node1
        [oracle@node1 .ssh]$ 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:
        f8:66:62:16:b9:4c:85:8c:af:a3:c4:ee:e8:f0:63:80 oracle@node1
        [oracle@node1 .ssh]$ cat *.pub > authorized_keys   --拷入一个文件
        将authorized_key文件与node2的authorized_key文件合并在一起,然后替代各自的authorized_key文件即可
        分别在两个节点测试  ssh node1 date,ssh node2 date ,ssh node1-priv date,ssh node2-priv date,第一次可能要输入密码,第二次就不需要了,直到两边都不需要输入密码后,则证明此配置成功。
     6、此处略过
     7、配置hangcheck-timer模块(两台机器都做)
        [root@node1 ~]# vi /etc/modprobe.conf  --编辑文件,加入如下内容
        options hangcheck-timer hangcheck_tick=10 hangcheck_margin=30
        [root@node1 ~]# vi /etc/rc.d/rc.local --设置为开机自启动。在文件中加入下面内容
        modprobe hangcheck-timer
     8、磁盘分区    任意一台机器上操作 (此处省略)
     9、配置裸设备(两台机器都要操作)
        [root@node1 ~]# vi /etc/sysconfig/rawdevices  在文件中加入下面内容
        /dev/raw/raw1  /dev/sdb1 
        /dev/raw/raw2  /dev/sdc1 
        /dev/raw/raw3  /dev/sdd1 
        /dev/raw/raw4  /dev/sde1
        [root@node1 ~]# vi /etc/udev/permissions.d/50-udev.permissions  修改oracle用户对裸设备的权限
        # raw devices
        ram*:oracle:dba:0660
        raw/*:oracle:dba:0660
        [root@node1 ~]# chkconfig --list rawdevices  --确认裸设备服务自动启动
        rawdevices      0:off 1:off 2:off 3:on 4:on 5:on 6:off
        [root@node1 ~]# service rawdevices restart  --启动裸设备服务,确认裸设备创建成功,权限正确
        Assigning devices:
           /dev/raw/raw1  -->   /dev/sdb1
        /dev/raw/raw1: bound to major 8, minor 17
           /dev/raw/raw2  -->   /dev/sdc1
        /dev/raw/raw2: bound to major 8, minor 33
           /dev/raw/raw3  -->   /dev/sdd1
        /dev/raw/raw3: bound to major 8, minor 49
           /dev/raw/raw4  -->   /dev/sde1
        /dev/raw/raw4: bound to major 8, minor 65
        done
        [root@node1 ~]# cd /dev/raw
        [root@node1 raw]# ll    ---检查裸设备的权限
        total 0
        crw-rw----  1 oracle dba 162, 1 Nov 27 17:43 raw1
        crw-rw----  1 oracle dba 162, 2 Nov 27 17:43 raw2
        crw-rw----  1 oracle dba 162, 3 Nov 27 17:43 raw3
        crw-rw----  1 oracle dba 162, 4 Nov 27 17:43 raw4
     10、创建asm磁盘,此处使用的是asmlib方法
        首先在node1上执行
        [root@node1 raw]# /etc/init.d/oracleasm enable  --使能asm功能
        Writing Oracle ASM library driver configuration: done
        Initializing the Oracle ASMLib driver:                     [  OK  ]
        Scanning the system for Oracle ASMLib disks: ^[[A^[[B      [  OK  ]
        [root@node1 raw]# /etc/init.d/oracleasm configure    --配置裸设备
        Configuring the Oracle ASM library driver.
        This will configure the on-boot properties of the Oracle ASM library
        driver.  The following questions will determine whether the driver is
        loaded on boot and what permissions it will have.  The current values
        will be shown in brackets ('[]').  Hitting without typing an
        answer will keep that current value.  Ctrl-C will abort.
        Default user to own the driver interface []: oracle   --输入asm磁盘的默认用户
        Default group to own the driver interface []: dba     --输入asm磁盘的默认组
        Start Oracle ASM library driver on boot (y/n) [y]: y
        Scan for Oracle ASM disks on boot (y/n) [y]: y
        Writing Oracle ASM library driver configuration: done
        Initializing the Oracle ASMLib driver:                     [  OK  ]
        Scanning the system for Oracle ASMLib disks:               [  OK  ]
        [root@node1 raw]# /etc/init.d/oracleasm createdisk VOL1  /dev/sdd1   --创建磁盘组
        Marking disk "VOL1" as an ASM disk:                        [  OK  ]
        [root@node1 raw]# /etc/init.d/oracleasm createdisk VOL2  /dev/sde1   --创建磁盘组
        Marking disk "VOL2" as an ASM disk:                        [  OK  ]
        [root@node1 raw]# /etc/init.d/oracleasm scandisks    --扫面asm磁盘
        Scanning the system for Oracle ASMLib disks:               [  OK  ]
        [root@node1 raw]# /etc/init.d/oracleasm listdisks    --列出asm磁盘
        VOL1
        VOL2
        在node2上执行
        [root@node2 ~]# /etc/init.d/oracleasm scandisks     --扫面asm磁盘
        Scanning the system for Oracle ASMLib disks:               [  OK  ]
        [root@node2 ~]# /etc/init.d/oracleasm listdisks     --列出asm磁盘失败,原因是没有使能asm功能
        [root@node2 ~]# /etc/init.d/oracleasm enable        --使能asm成功
        Writing Oracle ASM library driver configuration: done
        Initializing the Oracle ASMLib driver:                     [  OK  ]
        Scanning the system for Oracle ASMLib disks: ^[[A          [  OK  ]
        [root@node2 ~]# /etc/init.d/oracleasm listdisks          --列出asn磁盘成功
        VOL1
        VOL2
-----------------------------------------------------------------------------------------------------------------------------------------       
三、安装阶段
    1、安装集群软件clusterware
    2、配置监听程序
    3、安装asm,再次过程中碰到“此为单实例asm,如若安装集群asm需先确认是RAC”,解决办法是
       将/etc/oratab中的+ASM1:$ORACLE_HOME:N删除即可。
    4、创建数据库
         
      
      

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/23655288/viewspace-712187/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 重装CRS不再怕
请登录后发表评论 登录
全部评论

注册时间:2010-04-04

  • 博文量
    102
  • 访问量
    337069