1、Rose HA40 For Oracle9ilinux安装配置文档Rose HA4.0 For Oracle9i(linux)安装配置文档一、 安装前的准备1、 硬件环境:DELL 1400服务器两台(每台服务器上集成两块网卡)、NetStor DA6110S一台、SCSI线两条。2、 软件环境:RedHat9.0、Oracle9.2.0 for Linux、 Rose HA For Linux 4.0。3、注意:在连接SCSI线时,必须把主机和磁盘阵列断电。连接完成后,先开启磁盘阵列,后开启主机。二、 安装ROSE HA的过程(一)硬件安装用Rose软件所带的RS232串口线将服务器1和服务
2、器2的COM口连接起来。注:建议使用两根心跳线,如果要通过网卡建立第二根心跳线,可用以下方法连接:1、 用一根网线直接连接两台服务器上的网卡。2、 通过交换机连接两台服务器上的网卡。(二)软件安装1、 安装Rose HA for Linux# mount /dev/cdrom /mnt/cdrom# cd /mnt/cdrom/Shell#./install.sh2、设置环境变量:修改root 下的 .bash_profile文件,增加环境变量:(1)在PATH后面增加 :/opt/roseha/bin(2)增加一行HAHOME=/opt/roseha export HAHOME3、设置管理帐
3、户: #cd /opt/roseha/bin#./NewPass输入用户名和口令,该用户用于登陆Rose HA的管理控制台,对HA进行管理。如果需要修改已创建好的管理用户,可用/opt/roseha/bin目录下的SetPass命令。该命令可以修改已创建的管理用户名和口令。4、重新启动计算机 #sync #sync #init 65、进程查询:#ps ef | grep ha Rose Ha在启动后会产生四个主要进程:hamond、hasysd、hachkd和hasvrd6 、登陆Administrator tools管理控制台:#./hacon三、 配置Rose HA1、管理界面的启动# .
4、/hacon2、连接: 进入Tools-Connect,输入Server:localhostUser:rootPassword:root3、license号输入:进入 Tools-License,输入HostName:左边为本机主机名,右边为远程主机名。(把左边主机名输入后,按Tab键可把光标移动到右边,输入远程主机名,点击ok)4、创建RS232私网:进入PrivateNet-Create RS232,把两台主机的DeviceName改成/dev/ttys0。注:该操作在两台主机上都要做5、创建socket 私网进入PrivateNet-Create Socket, 选择主机用于私网的地址,
5、输入远程主机用于私网的地址。说明:这是两台机器通讯用的IP地址(心跳IP),注:该操作在两台主机上都要做6、获取对方主机信息: 进入 Tools-Network,直接选中AutoGet ,OK。这样就会得到对方主机信息。7、创建服务:进入Services-Create,Type:ORACLE IP Holding NIC:分别选择两台主机所提供外界服务的网卡设备名(如:eth0),不能与心跳网卡在同一个设备上。Active IP Address:这是为外界数据库服务的IP(虚拟IP)地址。此地址必须与公网的实际IP在同一网段上(也就是与在IP Holding NIC中所选择的网卡实际IP在同一
6、网段上)。Active SubnetMask:虚拟IP的子网掩码。Agent Script:相应的监控脚本,如:ha_ag_oracle.x。Start Script:相应的启动脚本,如: ora_start.sh。Stop Script:相应的停止脚本,如:ora_stop.sh。Active Volume:磁盘阵列两台主机共用的文件系统的设备名。如:/dev/sdb1Backup Volume:磁盘阵列两台主机共用的文件系统的设备名。Active Volume应与Backup Volume的值相同。Mount Point:与Active Volume,Backup Volume 值所对应的
7、mount 点。如:/oracleSwitchBack:NO8、Oracle9.2.0的启动脚本(1)ora_start.sh#!/bin/sh# This file: ora_start.sh# Version: 4.0.1HAHOME=cat /etc/init.d/HAHOMEexport HAHOMEout=$HAHOME/bin/APIOUT.xJOBNAME=$2# When Another Server are Down, You MUST sleep awhile.# You can change this value to meet your requirement if n
8、eed.if $1 = anotherdown then /bin/sleep 30fi# DISKDEV=/dev/sda5# MOUNTPOINT=/oracle# $HAHOME/bin/dflush $DISKDEV# fsck -a $DISKDEV# if test $? -ne 0# then# $out INFO fsck $DISKDEV.# fsck -yf $DISKDEV# fi# mount $DISKDEV $MOUNTPOINT# mount | grep $DISKDEV on $MOUNTPOINT /dev/null 2&1# if test $? -ne
9、0# then# $out INFO Cannot mount $DISKDEV.# exit# fi$HAHOME/bin/ha_ag_oracle.x $JOBNAME 0if test $? -eq 0then $out INFO The service has started. exitelse $out INFO Start Oracle server. su - oracle -c $HAHOME/bin/ora_dbshut_ab.sh su - oracle -c $HAHOME/bin/ora_dbstart.shfi$out INFO Start shell finishe
10、d. (2) ora_dbstart#!/bin/sh# This file: ora_dbstart.sh# Version: 4.0.1HAHOME=cat /etc/init.d/HAHOMEexport HAHOMEif test ! $1 -o ! $2then echo ora_dbstart.sh: Message: ORACLE_SID LISTENER not specified.else ORACLE_SID=$1 LISTENER=$2 export ORACLE_SIDfi# start Oracle Instance # You MUST choose a Oracl
11、e setup mode to meet your requirement.# The nether lines for Oracle Version 9 or Latersqlplus / as sysdba !startupexit!# The nether lines for Oracle Version 8 or Older# svrmgrl !# connect internal # startup# exit# !# start Oracle listenerlsnrctl start $29、Oracle9.2.0的停止脚本(1)ora_stop.sh#!/bin/sh# Thi
12、s file: ora_stop.sh# Version: 4.0.1HAHOME=cat /etc/init.d/HAHOMEexport HAHOMEout=$HAHOME/bin/APIOUT.xJOBNAME=$2ERRORNUMBER=$3$out INFO The service stop because of $ERRORNUMBER. # DISKDEV=/dev/sda5# MOUNTPOINT=/oracle$HAHOME/bin/ha_ag_oracle.x $JOBNAME 0if test $? -eq 0then $out INFO Stop Oracle serv
13、er immediate. su - oracle -c $HAHOME/bin/ora_dbshut_im.shelse $out INFO Stop Oracle server. su - oracle -c $HAHOME/bin/ora_dbshut_ab.shfisync# $HAHOME/bin/UMOUNT $DISKDEV $MOUNTPOINT# mount | grep $DISKDEV on $MOUNTPOINT /dev/null 2&1# if test $? -eq 0# then# $out WARNING Cannot umount $DISKDEV.# /s
14、bin/reboot# fi$out INFO Stop shell finished. (2) ora_dbshut_ab#!/bin/sh# This file: ora_dbshut_ab.sh# Version: 4.0.1COLUMNS=1024export COLUMNSHAHOME=cat /etc/init.d/HAHOMEexport HAHOMEif test ! $1 -o ! $2then echo ora_dbshut_ab.sh: ORACLE_SID or LISTENER not specified. LSNR_PID=ps -ef | grep tnslsnr
15、 | grep -v grep | awk -F print $2else ORACLE_SID=$1 LISTENER=$2 echo ora_dbshut_ab.sh: ORACLE_SID=$ORACLE_SID, LISTENER=$LISTENER. LSNR_PID=ps -ef | grep tnslsnr | grep $LISTENER | grep -v grep | awk -F print $2fi# Kill Oracle Listenerif EMPTY$LSNR_PID = EMPTY then echo Not found listener process !e
16、lse echo Kill oracle listener process . kill -9 $LSNR_PIDfi# Stop Oracle Instance # You MUST choose a Oracle stop mode to meet your requirement.# The nether lines for Oracle Version 9 or Latersqlplus / as sysdba ! shutdown abort exit ! # The nether lines for Oracle Version 8 or older# svrmgrl !# con
17、nect internal # shutdown abort# exit# !四、卸载Rose HA# mount /dev/cdrom /mnt/cdrom# cd /mnt/cdrom/Shell#./uninstall.sh五、Rose HA常用的命令、工具及故障处理方法1、相关命令:查询Roseha进程的命令: #ps ef | grep ha hamond、hasysd、hachkd、hasvrd停止Roseha进程的命令:#ha_kill ha手工启动Roseha进程的命令:#hamond进入Roseha软件的命令:#hacon2、双机软件的开关机顺序开机:先后依次开磁盘阵列,主机
18、,备机。关机:先后依次关备机,主机,磁盘阵列。 3、双机软件中的术语:Bring in: 把服务带入双机,受双机软件管理。Bring out: 把服务带出双机,不受双机软件管理。Take over:手工切换服务。在备机动作,来接管主机服务。Fail over: 手工切换服务。在主机动作,来提交主机服务给备机。六、RedHat9.0操作系统安装简要介绍1、注意事项分区的时候,swap分区为2047,native分区为剩余硬盘的容量。2、加挂磁盘阵列(1)分区fdisk /dev/sdb Command (m for help) : ma. toggle a bootable flag.b. ed
19、it bsd disklabel.c. toggle the dos compatibility flag.d. delete a partition.l. list known partition types.m. Print this menu.n. Add a new partition.o. Add a new empty Dos partition table.p. Print the partition table.q. Quit without saving changes.s. create a new empty Sun disklabel.t. change a parti
20、tions system id.u. Change display/entry units.v. Verify the partition table.w. Write table to disk and exit.x. Extra functionality (experts only).Command (m for help) : nCommand actione extended p primary partition(1-4) pPartition number(1-4) : 1First cylinder (1-554,default 1) :Last cylinder or +si
21、ze or +sizeM or +sizeK (1-554,default 554) : Command (m for help) :w(2)制作文件系统mkfs /dev/sdb13、在安装CD中安装以下补丁包compat-gcc-7.3-2.96.118.i386.rpmcompat-libgcj-7.3-2.96.118.i386.rpmcompat-libgcj-devel-7.3-2.96.118.i386.rpmnss_db-compat-2.2-20.i386.rpm七、Oracle9.2.0数据库安装介绍1、 解压:gunzip lnx_920_disk1.cpio.gz解压9
22、i数据库:cpio idmv sem #cat shmmax 返回值(33-) #echo 4294967295 shmmax (该值为内存) #echo 4096 shmmni #echo 2097152 shmall在文件中:/etc/sysctl.conf添加: kernel.shmmax=4294967295 kernel.sem=100 32000 100 100 #echo 65536 /proc/sys/fs/file-max #ulimit n 65536 #echo 1024 65000 /proc/sys/net/ipv4/ip_local_port_range #ulim
23、it u 163842、安装Jdk1.1.8_v3到/usr/localbunzip2 jdk118_v3.tar.bz2tar xvf jdk118_v3.tarmv jdk118_v3 javachown R oracle:dba /usr/local/java3、RACLE的配置文件.bash_profile.bash_profile内容如下:# .bash_profile# Get the aliases and functionsif -f /.bashrc ; then . /.bashrcfi# User specific environment and startup prog
24、ramsPATH=$PATH:$HOME/bin:$ORACLE_HOME/binexport PATHunset USERNAMELANG=En_cn; export LANGORACLE_HOME=/home/oracle/9.2.0; export ORACLE_HOMEORACLE_BASE=/home/oracle; export ORACLE_BASEORACLE_SID=ora; export ORACLE_SIDNLS_LANG=american_america.zhs16cgb231280; export NLS_LANGORA_NLS33=$ORACLE_HOME/ocom
25、mon/nls/admin/data; export ORA_NLS33LD_LIBRARY_PATH=$ORACLE_HOME/lib; export LD_LIBRARY_PATHCLASSPATH=.:$ORACLE_HOME/jdbc/lib/classes12.zip; export CLASSPATHPATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/dba:/etc; export PATHDISPLAY=:0.0; export DISPLAYTMPDIR=/tmp; export TMPDIRJAVA_HOME=/usr/local/java;
26、export JAVA_HOMEORACLE_TERM=xtermexport LD_ASSUME_KERNEL=2.4.1umask=022 (二)安装ORACLE数据库在图形界面下进入终端:#export DISPLAY=主机名:0.0#xhost +hostname#su oracle$./runInstaller安装过程中可能会报错:Error in invoking taget install of makefile /opt/oracle/product/9i/ctx/lib/ins_oemagent错误,选择ignore,安装完后修复当link进行到84%时出现一个关于ins_c
27、tx错误,编辑$ORACLE_HOME/ctx/lib/env_ctx.mk文件,在“INSO_LINK=”后面加入:$(LDLIBFLAG)dl即可安装完成修复第一个错误在shell下,oracle用户编辑$ORACLE_HOME/ctx/lib/ins_ctx.mk文件在1314行处把$(LINK)$(CTXHXOBJ)$(INSO_LINK) 改为$(LINK)ldl$(CTXHXOBJ)$(INSO_LINK)cd$ORACLE_HOME/network/libmakefins_net_client.mkinstall注:蓝色部分可以不做。make f $ORACLE_HOME/ctx
28、/lib/ins_ctx.mk install注:在安装Oracle数据库时,把应用程序安装在本地,把库建在盘阵上。具体步骤如下:4、在SERVER1和SERVER2上安装Oracle应用程序。5、用dbca命令在SERVER1上建库。6、把主机SERVER1上/home/oracle/9.2.0/network/admin下的listener.ora和tnsnames.ora文件中的主机名改为虚拟IP。把SERVER1上/home/oracle/o9.2.0/dbs/下的orapw和/home/oracle/9.2.0/network/admin下的listener.ora和tnsnames
29、.ora复制到主机B上相应位置。注:/home/oracle/oracle8i/dbs/orapw 此文件在建库之后才会产生打开自动启库功能:修改每个主机上/etc目录下的oratab文件,将相应的SID设置为Y。1、 连接、测试数据库su oraclesqlplus /nologSQLconn sys/oracle as sysdba 注: oracle为sys的密码SQLarchive log listSQLselect * from tab;SVRMGR shutdown immediate二、 故障解决1、先建库的机器数据库启动不了,这可能是两台机器上的ORACLE用户的ID号不同(看ORACLE用户的ID号用如下命令:id oracl
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1