zoukankan      html  css  js  c++  java
  • Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    环境:OEL 5.7 + Oracle 10.2.0.5 RAC

    1.实施前准备工作

    2.主机配置

    Linux平台 Oracle 10gR2 RAC安装指导:
    Part1:Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
    Part2:Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part2:clusterware安装和升级
    Part3:Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    1.实施前准备工作

    1.1 服务器安装操作系统

    配置完全相同的两台服务器,安装相同版本的Linux操作系统。留存系统光盘或者镜像文件。 我这里是OEL5.7,系统目录大小均一致。对应OEL5.7的系统镜像文件放在服务器上,供后面配置本地yum使用。

    1.2 Oracle安装介质

    Oracle 10.2.0.1版本的clusterware和db,以及10.2.0.5的升级包。
    -rwxr-xr-x 1 root root 302M 12月 24 13:07 10201_clusterware_linux_x86_64.cpio.gz
    -rwxr-xr-x 1 root root 724M 12月 24 13:08 10201_database_linux_x86_64.cpio.gz
    -rwxr-xr-x 1 root root 1.2G 12月 24 13:10 p8202632_10205_Linux-x86-64.zip
    

    这个用MOS账号自己去support.oracle.com下载,然后只需要上传到节点1即可。

    1.3 共享存储规划

    从存储中划分出两台主机可以同时看到的共享LUN。 我这里自己的实验环境是使用openfiler模拟出共享LUN: 5个100M大小LUN;用于OCR,votedisk; 3个10G大小LUN;用于DATA; 2个5G大小LUN;用于FRA。

    openfiler使用可参考:Openfiler配置RAC共享存储

    1.4 网络规划分配

    公有网络 以及 私有网络。 公有网络:物理网卡eth0(public IP,VIP),需要4个IP地址。 私有网络:物理网卡eth1(private IP),需要2个内部IP地址。

    实际生产环境一般服务器都至少有4块网卡。建议是两两bonding后分别作为公有网络和私有网络。

    2.主机配置

    2.1 使用yum安装oracle-validated包来简化主机配置的部分工作

    由于系统环境是OEL5.7,可以简化依赖包安装、内核参数调整,用户和组创建等工作,可参考:[OEL上使用yum install oracle-validated 简化主机配置工作](http://www.cnblogs.com/jyzhao/p/6235359.html)

    2.2 共享存储配置:

    我这里openfiler所在主机的IP地址为192.168.1.12。归划的10块LUN全部映射到iqn.2006-01.com.openfiler:rac10g上。
    [root@oradb28 ~]# iscsiadm -m discovery -t sendtargets -p 192.168.1.12
    192.168.1.12:3260,1 iqn.2006-01.com.openfiler:rac10g
    
    #手工登录iscsi目标
    iscsiadm -m node -T iqn.2006-01.com.openfiler:rac10g -p 192.168.1.12 -l
    
    #配置自动登录
    iscsiadm -m node -T iqn.2006-01.com.openfiler:rac10g -p 192.168.1.12 --op update -n node.startup -v automatic
    
    #重启iscsi服务
    service iscsi stop
    service iscsi start
    

    注意:安装10g RAC,要确保共享设备上划分的LUN要在所有节点上被识别为相同设备名称。

    [root@oradb27 ~]# ls -lh /dev/sd*
    brw-r----- 1 root disk 8,   0 Jan  2 22:40 /dev/sda
    brw-r----- 1 root disk 8,  16 Jan  2 22:40 /dev/sdb
    brw-r----- 1 root disk 8,  32 Jan  2 22:40 /dev/sdc
    brw-r----- 1 root disk 8,  48 Jan  2 22:40 /dev/sdd
    brw-r----- 1 root disk 8,  64 Jan  2 22:40 /dev/sde
    brw-r----- 1 root disk 8,  80 Jan  2 22:40 /dev/sdf
    brw-r----- 1 root disk 8,  96 Jan  2 22:40 /dev/sdg
    brw-r----- 1 root disk 8, 112 Jan  2 22:40 /dev/sdh
    brw-r----- 1 root disk 8, 128 Jan  2 22:40 /dev/sdi
    brw-r----- 1 root disk 8, 144 Jan  2 22:40 /dev/sdj
    
    [root@oradb28 ~]# ls -lh /dev/sd*
    brw-r----- 1 root disk 8,   0 Jan  2 22:41 /dev/sda
    brw-r----- 1 root disk 8,  16 Jan  2 22:41 /dev/sdb
    brw-r----- 1 root disk 8,  32 Jan  2 22:41 /dev/sdc
    brw-r----- 1 root disk 8,  48 Jan  2 22:41 /dev/sdd
    brw-r----- 1 root disk 8,  64 Jan  2 22:41 /dev/sde
    brw-r----- 1 root disk 8,  80 Jan  2 22:41 /dev/sdf
    brw-r----- 1 root disk 8,  96 Jan  2 22:41 /dev/sdg
    brw-r----- 1 root disk 8, 112 Jan  2 22:41 /dev/sdh
    brw-r----- 1 root disk 8, 128 Jan  2 22:41 /dev/sdi
    brw-r----- 1 root disk 8, 144 Jan  2 22:41 /dev/sdj
    

    其中sda,sdb,sdc,sdd,sde是100M大小的LUN,我们分别将这5个LUN各分成一个区(我实验中发现如果不分区直接绑成裸设备,在安装clusterware后执行root.sh时会报错:“Failed to upgrade Oracle Cluster Registry configuration”,分区后绑定分区成裸设备,发现可以正常执行通过)

    [root@oradb27 ~]# ls -lh /dev/sd*
    brw-r----- 1 root disk 8,  0 Jan  3 09:36 /dev/sda
    brw-r----- 1 root disk 8,  1 Jan  3 09:36 /dev/sda1
    brw-r----- 1 root disk 8, 16 Jan  3 09:36 /dev/sdb
    brw-r----- 1 root disk 8, 17 Jan  3 09:36 /dev/sdb1
    brw-r----- 1 root disk 8, 32 Jan  3 09:36 /dev/sdc
    brw-r----- 1 root disk 8, 33 Jan  3 09:36 /dev/sdc1
    brw-r----- 1 root disk 8, 48 Jan  3 09:36 /dev/sdd
    brw-r----- 1 root disk 8, 49 Jan  3 09:36 /dev/sdd1
    brw-r----- 1 root disk 8, 64 Jan  3 09:36 /dev/sde
    brw-r----- 1 root disk 8, 65 Jan  3 09:36 /dev/sde1
    
    [root@oradb28 crshome_1]# ls -lh /dev/sd*
    brw-r----- 1 root disk 8,  0 Jan  3 09:36 /dev/sda
    brw-r----- 1 root disk 8,  1 Jan  3 09:36 /dev/sda1
    brw-r----- 1 root disk 8, 16 Jan  3 09:36 /dev/sdb
    brw-r----- 1 root disk 8, 17 Jan  3 09:36 /dev/sdb1
    brw-r----- 1 root disk 8, 32 Jan  3 09:36 /dev/sdc
    brw-r----- 1 root disk 8, 33 Jan  3 09:36 /dev/sdc1
    brw-r----- 1 root disk 8, 48 Jan  3 09:36 /dev/sdd
    brw-r----- 1 root disk 8, 49 Jan  3 09:36 /dev/sdd1
    brw-r----- 1 root disk 8, 64 Jan  3 09:36 /dev/sde
    brw-r----- 1 root disk 8, 65 Jan  3 09:36 /dev/sde1
    

    1)使用udev 绑定raw devices ,供ocr和voting disk使用

    编辑配置文件并追加以下内容:

    # vi /etc/udev/rules.d/60-raw.rules
    ACTION=="add", KERNEL=="sda1", RUN+="/bin/raw /dev/raw/raw1 %N"
    ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw2 %N"
    ACTION=="add", KERNEL=="sdc1", RUN+="/bin/raw /dev/raw/raw3 %N"
    ACTION=="add", KERNEL=="sdd1", RUN+="/bin/raw /dev/raw/raw4 %N"
    ACTION=="add", KERNEL=="sde1", RUN+="/bin/raw /dev/raw/raw5 %N"
    ACTION=="add", KERNEL=="raw*", OWNER=="oracle", GROUP=="oinstall", MODE=="0660"
    

    启动start_udev:

    [root@oradb27 rules.d]# start_udev
    Starting udev:                                             [  OK  ]
    [root@oradb27 rules.d]# ls -l /dev/raw*
    crw-rw---- 1 oracle oinstall 162, 0 Jan  2 22:37 /dev/rawctl
    
    /dev/raw:
    total 0
    crw-rw---- 1 oracle oinstall 162, 1 Jan  2 23:11 raw1
    crw-rw---- 1 oracle oinstall 162, 2 Jan  2 23:11 raw2
    crw-rw---- 1 oracle oinstall 162, 3 Jan  2 23:11 raw3
    crw-rw---- 1 oracle oinstall 162, 4 Jan  2 23:11 raw4
    crw-rw---- 1 oracle oinstall 162, 5 Jan  2 23:11 raw5
    [root@oradb27 rules.d]# 
    

    配置文件60-raw.rules传到节点2:

    [root@oradb27 rules.d]# scp /etc/udev/rules.d/60-raw.rules oradb28:/etc/udev/rules.d/
    

    在节点2启动start_udev。

    注意:如果安装中发现raw曾被使用过,可能需要dd清除头部信息;

    dd if=/dev/zero of=/dev/raw/raw1 bs=1048576 count=10
    dd if=/dev/zero of=/dev/raw/raw2 bs=1048576 count=10
    dd if=/dev/zero of=/dev/raw/raw3 bs=1048576 count=10
    dd if=/dev/zero of=/dev/raw/raw4 bs=1048576 count=10
    dd if=/dev/zero of=/dev/raw/raw5 bs=1048576 count=10
    

    2)使用udev 绑定asm devices,供data磁盘组和fra磁盘组使用

    for i in f g h i j;
    do
    echo "KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="`scsi_id -g -u -s /block/sd$i`", NAME="asm-disk$i", OWNER="oracle", GROUP="oinstall", MODE="0660""
    done
    

    操作过程如下:

    [root@oradb27 rules.d]# for i in f g h i j;
    > do
    > echo "KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="`scsi_id -g -u -s /block/sd$i`", NAME="asm-disk$i", OWNER="oracle", GROUP="oinstall", MODE="0660""
    > done
    KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="14f504e46494c455279366c36366a2d5a4243752d58394a33", NAME="asm-diskf", OWNER="oracle", GROUP="oinstall", MODE="0660"
    KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="14f504e46494c45525453586652542d67786f682d594c4a66", NAME="asm-diskg", OWNER="oracle", GROUP="oinstall", MODE="0660"
    KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="14f504e46494c455232586c3151572d62504e412d3343547a", NAME="asm-diskh", OWNER="oracle", GROUP="oinstall", MODE="0660"
    KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="14f504e46494c45527061334151682d4666656d2d5a6a4c67", NAME="asm-diski", OWNER="oracle", GROUP="oinstall", MODE="0660"
    KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -s %p", RESULT=="14f504e46494c4552495649757a352d675251532d47744353", NAME="asm-diskj", OWNER="oracle", GROUP="oinstall", MODE="0660"
    [root@oradb27 rules.d]# 
    
    vi 
    [root@oradb27 rules.d]# vi 99-oracle-asmdevices.rules
    
    [root@oradb27 rules.d]# start_udev
    Starting udev:                                             [  OK  ]
    [root@oradb27 rules.d]# ls -lh /dev/asm*
    brw-rw---- 1 oracle oinstall 8,  80 Jan  2 23:18 /dev/asm-diskf
    brw-rw---- 1 oracle oinstall 8,  96 Jan  2 23:18 /dev/asm-diskg
    brw-rw---- 1 oracle oinstall 8, 112 Jan  2 23:18 /dev/asm-diskh
    brw-rw---- 1 oracle oinstall 8, 128 Jan  2 23:18 /dev/asm-diski
    brw-rw---- 1 oracle oinstall 8, 144 Jan  2 23:18 /dev/asm-diskj
    
    #拷贝配置文件99-oracle-asmdevices.rules到节点2,启动start_udev
    [root@oradb27 rules.d]# scp 99-oracle-asmdevices.rules oradb28:/etc/udev/rules.d/99-oracle-asmdevices.rules
    
    [root@oradb28 ~]# start_udev
    Starting udev:                                             [  OK  ]
    [root@oradb28 ~]# ls -l /dev/asm*
    brw-rw---- 1 oracle oinstall 8,  80 Jan  2 23:20 /dev/asm-diskf
    brw-rw---- 1 oracle oinstall 8,  96 Jan  2 23:20 /dev/asm-diskg
    brw-rw---- 1 oracle oinstall 8, 112 Jan  2 23:20 /dev/asm-diskh
    brw-rw---- 1 oracle oinstall 8, 128 Jan  2 23:20 /dev/asm-diski
    brw-rw---- 1 oracle oinstall 8, 144 Jan  2 23:20 /dev/asm-diskj
    

    2.3 配置/etc/hosts

    按照规划配置节点1的/etc/hosts内容
    #public ip
    192.168.1.27  oradb27
    192.168.1.28  oradb28
    #private ip
    10.10.10.27   oradb27-priv
    10.10.10.28   oradb28-priv
    #virtual ip
    192.168.1.57  oradb27-vip
    192.168.1.58  oradb28-vip
    

    然后scp拷贝/etc/hosts配置文件到节点2:

    scp /etc/hosts oradb28:/etc/
    

    2.4 配置Oracle用户等价性

    #所有节点执行:
    ssh-keygen -q -t rsa  -N "" -f  ~/.ssh/id_rsa
    
    #节点1执行:
    ssh 192.168.1.27 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    ssh 192.168.1.28 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    
    chmod 600 ~/.ssh/authorized_keys
    
    scp ~/.ssh/authorized_keys  192.168.1.28:~/.ssh/
    
    #所有节点执行验证ssh等价性:
    ssh 192.168.1.27 date;ssh 192.168.1.28 date;
    ssh oradb27 date;ssh oradb28 date;
    ssh oradb27-priv date;ssh oradb28-priv date;
    

    对配置用户ssh互信步骤如有疑问可以参考:记录一则Linux SSH的互信配置过程

    2.5 创建软件目录

    mkdir -p /u01/app/oracle/product/10.2.0.5/dbhome_1
    mkdir -p /u01/app/oracle/product/10.2.0.5/crshome_1
    chown -R oracle:oinstall /u01/app
    

    2.6 配置用户环境变量

    节点1: vi /home/oracle/.bash_profile
    export ORACLE_BASE=/u01/app/oracle
    export ORACLE_HOME=/u01/app/oracle/product/10.2.0.5/dbhome_1
    export ORA_CRS_HOME=/u01/app/oracle/product/10.2.0.5/crshome_1
    export ORACLE_SID=jyrac1
    export NLS_LANG=AMERICAN_AMERICA.US7ASCII
    export PATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:$PATH
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib
    alias sql="sqlplus "/as sysdba""
    

    节点2:vi /home/oracle/.bash_profile

    export ORACLE_BASE=/u01/app/oracle
    export ORACLE_HOME=/u01/app/oracle/product/10.2.0.5/dbhome_1
    export ORA_CRS_HOME=/u01/app/oracle/product/10.2.0.5/crshome_1
    export ORACLE_SID=jyrac2
    export NLS_LANG=AMERICAN_AMERICA.US7ASCII
    export PATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:$PATH
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib
    alias sql="sqlplus "/as sysdba""
    

    2.7 关闭各节点主机防火墙和SELinux

    各节点检查、关闭防火墙和SE Linux:
    service iptables status
    service iptables stop
    chkconfig iptables off
    
    getenforce
    setenforce 0
    vi /etc/selinux/config
     修改:Enforcing -> disabled
    

    2.8 各节点系统时间校对

    service ntpd stop
    date 
    #如果时间有问题,就按下面的语法进行设定
    date 072310472015 //设定日期为2015-07-23 10:47:00
    hwclock -w
    hwclock -r
    

    至此,主机配置的相关准备工作已经完成。

  • 相关阅读:
    Best Time to Buy and Sell Stock
    Remove Nth Node From End of List
    Unique Paths
    Swap Nodes in Pairs
    Convert Sorted Array to Binary Search Tree
    Populating Next Right Pointers in Each Node
    Maximum Subarray
    Climbing Stairs
    Unique Binary Search Trees
    Remove Duplicates from Sorted Array
  • 原文地址:https://www.cnblogs.com/jyzhao/p/6233686.html
Copyright © 2011-2022 走看看