ITPub博客

首页 > Linux操作系统 > Linux操作系统 > rac111

rac111

Linux操作系统 作者:weibingzhou 时间:2015-09-23 12:39:56 0 删除 编辑

http://space.itpub.net/?uid-14359194-action-viewspace-itemid-622278

Linux5 + Rac安装,升级,优化笔记

 

---------安装

一操作系统初始化存储:

一:安装和配置ISCSI

  在两个系统上做:

1.      # rpm –ivh iscsi-initiator-utils-6.2.0.871-0.10.el5.x86_64.rpm

2.      # vi /etc/iscsi/iscsid.conf 添加几行:

DiscoveryAddress=192.168.2.250

SendAsyncText=yes

Continuous=yes

3.      # service iscsi start

4.      # iscsiadm -m discovery -t sendtargets -p 192.168.2.250 发现目标

 tcp: [2] 192.168.2.250:3260,1 iqn.2001-05.com.equallogic:0-8a0906-def0bd805-7ff92d329bb4b14b-flash

tcp: [3] 192.168.2.250:3260,1 iqn.2001-05.com.equallogic:0-8a0906-3620bd805-5f792d329c34b14c-backup

tcp: [4] 192.168.2.250:3260,1 iqn.2001-05.com.equallogic:0-8a0906-db40bd805-1b092d329b64b14b-data

tcp: [5] 192.168.2.250:3260,1 iqn.2001-05.com.equallogic:0-8a0906-e370bd805-1e892d329c04b14b-ocfs2

5.      # service iscsi restart  后自动login四个session ;

6.      # multipath –ll 得到各session的uuid 结果如下:

  backup (36090a05880bd20364cb1349c322d795f) dm-1    size=800G

  ocfs (36090a05880bd70e34bb1049c322d891e)   dm-2    size=525M

  flash (36090a05880bdf0de4bb1b49b322df97f)   dm-0    size=4.0G

  data (36090a05880bd40db4bb1649b322d091b)  dm-3    size=1.0T

7.      # vi /etc/multipath.conf  添加如下内容:

  multipaths {

       multipath {

       wwid   36090a05880bdf0de4bb1b49b322df97f

       alias  flash

       }

       multipath {

       wwid   36090a05880bd40db4bb1649b322d091b

       alias  data

       }

       multipath {

       wwid   36090a05880bd70e34bb1049c322d891e

       alias  ocfs

       }

       multipath {

       wwid   36090a05880bd20364cb1349c322d795f

       alias  backup

       }

}

8.      # service multipathd restart 重启多路径服务。

#  ls /dev/mapper/  应该能看到下面块设备文件

backup control data flash ocfs

主机配置

一网络设置

在db3上:

# vi /etc/hosts 添加以下内容;

  192.168.2.203  db3

  192.168.2.213  db3-vip

  10.0.0.1       db3-priv

 192.168.2.204   db4

 192.168.2.214   db4-vip 

 10.0.0.2        db4-priv

在db4上:

 # vi /etc/hosts 添加以下内容;

  192.168.2.203   db3

  192.168.2.213   db3-vip

  10.0.0.1        db3-priv

  192.168.2.204   db4

  192.168.2.214   db4-vip 

  10.0.0.2        db4-priv

 

二检查安装必须的包:

   两个系统上都要做:

  # rpm -qa   binutils ,compat-db compat-libstdc++ control-center gcc gcc-c++ glibc

 glibc-common gnome-libs  libstdc++  libstdc++-devel  make pdksh  sysstat  

 xscreensaver  setarch glibc-devel libaio openmotif

三配置系统内核参数

   两个系统上都做:

  # vi /etc/sysctl.conf 添加:

       kernel.shmall               = 2097152

kernel.shmmax               = 8147483648

kernel.shmmni               = 4096

kernel.sem                  = 250 32000 100 128

fs.file-max                 = 65536

net.ipv4.ip_local_port_range = 1024 65000

net.core.rmem_default       = 1048576

net.core.rmem_max           = 1048576

net.core.wmem_default       = 262144

net.core.wmem_max           = 262144

 # sysctl -p  生效配置

 

四  配置hangcheck-timer 模块

 两个系统上都做:

      #  vi /etc/modprobe.conf添加

         options hangcheck-timer hangcheck_tick=10 hangcheck_margin=30

     # modprobe -v hangcheck-timer 立即生效

五配置两台机器时间同步

  在 db3上:

     # vi /etc/ntp.conf  编辑:

       server 127.127.1.0

       fudge 127.127.1.0 stratum 11

       driftfile  /var/lib/ntp/drift 

       broadcastdelay   0.008

  在 db4上: 

     # vi /etc/ntp.conf 编辑:

       server 192.168.2.203 prefer

       driftfile /var/lib/ntp/drift

       broadcastdelay   0.008

  在两个系统上做:

    # /etc/init.d/ntpd restart

六创建ORACLE 用户并配置ORACLE

一,创建ORACLE用户。

在两个系统上都做:

 # groupadd –g 700 oinstall

 # groupadd –g 600 dba

 # mkdir –p /u1/oracle /ocfs  /backup

 #useradd –u 500 –g oinstall –G dba oracle

 # passwd oracle 设置密码。

 # chown –R oracle:oinstall /u1 /ocfs /backup 

二.设置ORACLE环境变量。

 在db3上做:

 # su – oracle

 # vi .bash_profile添加以下内容:

    ORACLE_SID=asc1

ORACLE_BASE=/u1/oracle

ORACLE_HOMOE=$ORACLE_BASE/product/10.2.0/db_1

ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1

LD_LIBRARY_PATH=$ORACLE_HOME/lib

PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:/usr/X11R6/bin

 

export PATH ORACLE_SID ORACLE_BASE ORACLE_HOME ORA_CRS_HOME LD_LIBRARY_PATH

umask 022

  在 db4上做:

  #  su – oracle

  #  vi .bash_profile添加以下内容:

    ORACLE_SID=asc2

ORACLE_BASE=/u1/oracle

ORACLE_HOMOE=$ORACLE_BASE/product/10.2.0/db_1

ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1

LD_LIBRARY_PATH=$ORACLE_HOME/lib

PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:/usr/X11R6/bin

 

export PATH ORACLE_SID ORACLE_BASE ORACLE_HOME ORA_CRS_HOME LD_LIBRARY_PATH

umask  022

 三创建ORACLE目录

    以ORACLE用户在两个系统上都做:

    [oracle@db3 ~]$ mkdir -p $ORACLE_BASE/admin

[oracle@db3 ~]$ mkdir -p $ORACLE_HOME

[oracle@db3 ~]$ mkdir -p $ORA_CRS_HOME

[oracle@db3 ~]$ mkdir -p /u1/oradata/asc

 四 提高ORACLE用户的SHELL限制。

    以ROOT用户 在两个系统上都做:

     # vi /etc/security/limits.conf 添加如下内容:

       Oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

     # vi /etc/pam.d/login  添加如下内容:

       session   required    /lib/security/pam_limits.so

    

 # 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

七  为oracleasm和ocfs 创建磁盘分区

在 db3 上做:

 # fdisk /dev/mapper/data

 # fdisk /dev/mapper/flash

# fdisk /dev/mapper/ocfs

 # fdisk /dev/mapper/backup 

  由于存储上的这些磁盘做了磁盘共享,所以在db4上可以看到磁盘分区的结果,无需在再分区。

八 安装oracleasm包和ocfs2包:

  在两个系统上都做:

  安装完成后应看到以下包:

[root@db3 package]# rpm -qa |grep oracleasm

oracleasm-2.6.18-164.el5-2.0.5-1.el5

oracleasmlib-2.0.4-1.el5

oracleasm-support-2.1.3-1.el5

 

[root@db3 package]# rpm -qa |grep ocfs

ocfs2-2.6.18-164.el5-1.4.4-1.el5

ocfs2console-1.4.3-1.el5

ocfs2-tools-1.4.3-1.el5

  九为oracleasm 映射裸设备磁盘:

    两个系统上都做:

    # vi /etc/udev/rules.d/60-raw.rules 添加如下内容:

       ACTION=="add", KERNEL=="/dev/mapper/datap1", RUN+="/bin/raw /dev/raw/raw1 %N"

ACTION=="add", KERNEL=="/dev/mapper/flashp1", RUN+="/bin/raw /dev/raw/raw2 %N"

KERNEL=="raw[1-2]", WNER="oracle", GROUP="oinstall", MODE="640"

ACTION=="add", ENV{MAJOR}="253", ENV{MINOR}="2", RUN+="raw /dev/raw/raw1 %M %m"

ACTION=="add", ENV{MAJOR}="253", ENV{MINOR}="7", RUN+="raw /dev/raw/raw2 %M %m"

#  raw /dev/raw/raw1   /dev/mapper/datap1

#  raw /dev/raw/raw2   /dev/mapper/flash1

#  ln –sf /dev/raw/raw1  /u1/oradata/asc/asmdisk1

#  ln –sf /dev/raw/raw2  /u1/oradata/asc/asmdisk2

# vi /etc/rc.d/rc.local  添加:

  raw /dev/raw/raw1   /dev/mapper/datap1

  raw /dev/raw/raw2   /dev/mapper/flashp1

 

十配置oracleasm磁盘:

  在db3,db4 上以root用户做:

   [root@db4 ~]# /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

Default group to own the driver interface []: dba

Start Oracle ASM library driver on boot (y/n) [n]: 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 ]

 

在 db3 上做:

 [root@db4 ~]# /etc/init.d/oracleasm createdisks VOL1 /dev/mapper/datap1

 [root@db4 ~]# /etc/init.d/oracleasm createdisks VOL2 /dev/mapper/flashp1

 [root@db4 ~]# /etc/init.d/oracleasm listdisks

VOL1

VOL2

  在 db4 上做:

 [root@db4 ~]# /etc/init.d/oracleasm listdisks

VOL1

VOL2

 

 

十一 建立 oracle互信机制

在两个系统都做:(oracle用户)

# mkdir ~/.ssh

# chmod 700 ~/.ssh

# ssh-keygen –t rsa 

# ssh-keygen –t dsa

在db3上做:

# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized.keys

# cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized.keys 

# ssh db4 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized.keys

# ssh db4 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized.keys

# scp ~/.ssh/authorized.keys >> db4: ~/.ssh/authorized.keys

最后应该能两台机器ssh 时不需要提示输入密码!

!scp 时报远程session连接错误,解决方法:

两个系统上都做:

# vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改参数为:

 MTU=1500

# service network restart 即可!

十二 配置oracle的集群文件系统ocfs .

一创建 ocfs配置文件:

 # ocfs2console  弹出图形界面配置。

二传递配置文件到另一主机:

 # ocfs2console  弹出图形界面配置。

三 配置o2cb 驱动程序

 在两个系统上都做:

  # /etc/init.d/o2cb unload

  [root@db3 ~]# /etc/init.d/o2cb configure

Configuring the O2CB driver.

 

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

without typing an answer will keep that current value. Ctrl-C

will abort.

 

Load O2CB driver on boot (y/n) [n]: y

Cluster stack backing O2CB [o2cb]:

Cluster to start on boot (Enter "none" to clear) [ocfs2]:

Specify heartbeat dead threshold (>=7) [31]: 61

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

Loading filesystem "configfs": OK

Mounting configfs filesystem at /sys/kernel/config: OK

Loading filesystem "ocfs2_dlmfs": OK

Mounting ocfs2_dlmfs filesystem at /dlm: OK

Starting O2CB cluster ocfs2: OK

应该看到以下状态:

root@db3 ocfs2]# /etc/init.d/o2cb status

Driver for "configfs": Loaded

Filesystem "configfs": Mounted

Driver for "ocfs2_dlmfs": Loaded

Filesystem "ocfs2_dlmfs": Mounted

Checking O2CB cluster ocfs2: Online

Heartbeat dead threshold = 61

   Network idle timeout: 30000

  Network keepalive delay: 2000

   Network reconnect delay: 2000

Checking O2CB heartbeat: Not active

四格式化ocfs 文件系统

 在db3上做:

   #  ocfs2console format 图形界面来做。

   # mount –t ocfs2 -o datavolume,nointr  /dev/mapper/backupp1  /backup

   # mount –t ocfs2 -o datavolume,nointr  /dev/mapper/ocfsp1     /ocfs

 在db4上做:

 # mount –t ocfs2 -o datavolume,nointr  /dev/mapper/backupp1  /backup

   # mount –t ocfs2 -o datavolume,nointr  /dev/mapper/ocfsp1     /ocfs

 在db3,db4 上都做:

  # vi /etc/fstab 添加:

      /dev/mapper/ocfsp1              /ocfs                  ocfs2  _netdev,datavolume,nointr     0 0

/dev/mapper/backupp1           /backup                ocfs2  _netdev,datavolume,nointr     0 0

  # mkdir –p /ocfs/clusterware

  # chown -R oracle:oinstall /ocfs

 

 

十三   重启系统

 在两个系统上都做:

# init 6

 

 

十四   安装ORACLE集群件clasterware .

错误一:在第二个节点执行root.sh 时报:

 /u1/crs/oracle/product/10.2.0/crs_1/jdk/jre//bin/java: error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory

     

解决方法:

 [root@db4 crs_1]# vi /u1/crs/oracle/product/10.2.0/crs_1/bin/vipca

      #Remove this workaround when the bug 3937317 is fixed

      arch=`uname -m`

      if [ "$arch" = "i686" -o "$arch" = "ia64" -o "$arch" = "x86_64" ]

      then

           LD_ASSUME_KERNEL=2.4.19

           export LD_ASSUME_KERNEL

      fi

unset LD_ASSUME_KERNEL (该项为增加项)

      #End workaround

[root@db4 crs_1]# vi /u1/crs/oracle/product/10.2.0/crs_1/bin/srvctl 

    LD_ASSUME_KERNEL=2.4.19

export LD_ASSUME_KERNEL

unset LD_ASSUME_KERNEL (该项为增加项)

    # sh root.sh 重新执行root.sh

 

 

 

错误二:# . /u1/crs/oracle/product/10.2.0/crs_1/bin/vipca 报错:

      Error 0(Native: listNetInterfaces:[3])

 [Error 0(Native: listNetInterfaces:[3])]

解决方法:

      [root@db4 bin]# ./oifcfg setif -global eth0/192.168.2.0:public

[root@db4 bin]# ./oifcfg setif -global eth1/10.0.0.0:cluster_interconnect

[root@db4 bin]# ./oifcfg getif

eth0 192.168.2.0 global public

eth1 10.0.0.0 global cluster_interconnect

然后重新执行 . /u1/crs/oracle/product/10.2.0/crs_1/bin/vipca 配置两系统的vip .

 

 

CRS 配置正确后执行以下命令应该能看到以下结果:

[oracle@db4 db_1]$ crs_stat -t

Name          Type          Target   State    Host       

------------------------------------------------------------

ora.db3.gsd   application   ONLINE   ONLINE   db3        

ora.db3.ons   application   ONLINE   ONLINE   db3        

ora.db3.vip   application   ONLINE   ONLINE   db3        

ora.db4.gsd   application   ONLINE   ONLINE   db4        

ora.db4.ons   application   ONLINE   ONLINE   db4        

ora.db4.vip   application   ONLINE   ONLINE    db4         

十五 安装ORACLE数据库软件:

十六 使用DBCA创建数据库。

# [oracle@db4 ~]$ crs_stat -t

Name          Type          Target   State    Host       

------------------------------------------------------------

ora....c1.inst application   ONLINE   ONLINE   db3        

ora....c2.inst application   ONLINE   ONLINE   db4        

ora.asc.db    application   ONLINE   ONLINE   db3        

ora....SM1.asm application   ONLINE   ONLINE   db3        

ora....B3.lsnr application   ONLINE   ONLINE   db3        

ora.db3.gsd   application   ONLINE   ONLINE   db3        

ora.db3.ons   application   ONLINE   ONLINE   db3        

ora.db3.vip   application   ONLINE   ONLINE   db3        

ora....SM2.asm application   ONLINE   ONLINE   db4        

ora....B4.lsnr application   ONLINE   ONLINE   db4        

ora.db4.gsd   application   ONLINE   ONLINE   db4        

ora.db4.ons   application   ONLINE   ONLINE   db4        

ora.db4.vip   application   ONLINE   ONLINE   db4

 Year,OK !!!!

 

 

 

------------升级

一停掉所有节点db ,asm ,nodeapps .

在两个节点上做:

 # emctl stop dbconsole

 # isqlplusctl stop

 # lsnrctl stop 

 

在db3 上做:

# srvctl stop instance –d asc –i asc1

# srvctl stop instance -d asc  -i asc2

# srvctl stop database -d  asc

# srvctl stop asm -n db3

# srvctl stop asm -n db4  

# srvctl stop nodeapps  -n db3

# srvctl stop nodeapps  -n db4

[oracle@db3 stage]$ crs_stat –t   (检查状态)

Name          Type          Target   State    Host       

------------------------------------------------------------

ora....c1.inst application   OFFLINE  OFFLINE              

ora....c2.inst application   OFFLINE  OFFLINE              

ora....sc2.srv application   OFFLINE  OFFLINE              

ora....scdb.cs application   OFFLINE  OFFLINE              

ora.asc.db    application   OFFLINE  OFFLINE              

ora....SM1.asm application   OFFLINE  OFFLINE              

ora....B3.lsnr application   OFFLINE  OFFLINE              

ora.db3.gsd   application   OFFLINE  OFFLINE              

ora.db3.ons   application   OFFLINE  OFFLINE              

ora.db3.vip   application   OFFLINE  OFFLINE              

ora....SM2.asm application   OFFLINE  OFFLINE              

ora....B4.lsnr application   OFFLINE  OFFLINE              

ora.db4.gsd   application   OFFLINE  OFFLINE              

ora.db4.ons   application   OFFLINE  OFFLINE              

ora.db4.vip   application   OFFLINE  OFFLINE 

 

二 停掉所有节点的CRS服务,在两个节点上都要做:

/u1/crs/oracle/product/10.2.0/crs_1/bin/crsctl   stop  crs 

 

三 进入Disk1 运行:

(1) 升级CRS :

      # ./runInstaller 

      # 选择CRS_HOME 一路NEXT下去!

      (2) 升级数据库软件 由 10.2.0.1 到 10.2.0.4    

.在linux1更新包目录下

    $./runInstaller

   在界面选择:OraDb10g_home1

.在两个节点上执行:

#/u1/app/oracle/product/10.2.0/db_1/root.sh

      在两个节点上执行:

#/etc/init.d/init.crs stop

.  在db3上执行:

#/etc/init.d/init.crs start

(3) 升级数据字典。

.  在db3上升级。(手动升级方式)执行:


$ sqlplus /nolog

SQL>CONN SYS AS SYSDBA

SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP NOMOUNT
SQL> ALTER SYSTEM SET CLUSTER_DATABASE=FALSE SCOPE=spfile;
SQL> SHUTDOWN

SQL> STARTUP UPGRADE
SQL> @/u1/app/oracle/product/10.2.0/db_1/rdbms/admin/catupgrd.sql

SQL> SHUTDOWN IMMEDIATE

SQL> STARTUP
SQL> @/u1/app/oracle/product/10.2.0/db_1/rdbms/admin/utlrp.sql

SQL>ALTER SYSTEM SET CLUSTER_DATABASE=TRUE scope=spfile sid='*';

SQL> SHUTDOWN IMMEDIATE

SQL> STARTUP

在两台节点上执行:

   #/u1/app/oracle/product/crs/bin/crsctl stop crs

   在db4上执行:

    #/u1/app/oracle/product/crs/bin/crsctl start crs

   然后执行上面脚本

    10.重启两个节点的crs(两个节点)

    #/etc/init.d/init.crs stop

    #/etc/init.d/init.crs start

---------另外的一种升级方式:使用DBUA升级。

12.  在db3上使用dbua升级向导升级。执行:

# dbua 使用图形界面,NEXT下去。OK!

 

LINUX 5 +RAC  安装,升级完成! 

 

 

 

 

 

 

 

 

 

-------------优化

RAC安装完成后,是一个默认的数据库配置,这些配置与实际生产环境的要求存在一定的差距,所以需要做些预设置调整。以下是针对本数据库做的预参数调整:

一 ORACLE内存参数调整:

  静态参数:sga_max_size=8G

  动态参数:sga_target=7728M

  动态参数:open_cursors=3000

  动态参数:cursor_sharing=similar

  动态参数:db_keep_cache_size=300m

  动态参数:db_recycle_cache_size=100m

  动态参数:db_cache_advice=on

二 session参数调整:

  静态参数:processes=2000

  静态参数:sessions=2205

三 pga参数调整:

  动态参数:workarea_size_policy=AUTO

  静态参数:pga_aggregate_target=1206M

四磁盘I/O参数调整:

  静态参数:sql_trace=FALSE

  动态参数:timed_statistics=true

  动态参数:db_file_multiblock_read_count=16

  静态参数:undo_management= AUTO

  动态参数:undo_retention=3600

  静态参数:pre_page_sga=true

  静态参数:lock_sga=true

  静态参数:disk_asynch_io=true

 

LINUX 5 +RAC  安装,升级,性能参数调整完成!

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

下一篇: RAC安裝 參考
请登录后发表评论 登录
全部评论

注册时间:2014-03-06

  • 博文量
    51
  • 访问量
    17362