热门关键字:  ubuntu  分区  函数  Fedora  linux系统进程

Oracle HA 在Unix上双机环境的安装指南一

来源:www.91linux.com 作者: 时间:2007-07-24 Tag: 点击:

4、ORACLE SERVER 启动步骤

 

更新oracle用户的.profile和.dtprofile文件(用于设置环境变量)

以oracle身份登录

.profile 文件和.dtprofile 文件示例:

 

 

ORACLE_BASE=/home/oracle
ORACLE_HOME=$ORACLE_BASE/ora9
ORACLE_SID=orcla(A机/B机)
ORACLE_OWNER=oracle
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
SHLIB_PATH=$ORACLE_HOME/lib
LD_LIBRARY_PATH=$ORACLE_HOME/lib
LN_CNTRL=L_PTHREADS_D7
ORACLE_TERM=ansi
PATH=$ORACLE_HOME/bin:$ORACLE_HOME/network/bin:$PATH
export PATH ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_TERM
export ORACLE_OWNER
export NLS_LANG ORA_NLS33 SHLIB_PATH LD_LIBRARY_PATH LN_CNTRL

 

 

5、数据库实例的启动与关闭

 

启动数据库实例

 

sqlplus /nolog

conn / as sysdba

startup

 

关闭数据库实例

 

sqlplus /nolog

conn / as sysdba

shutdown immediate

 

这里启动与关闭的实例的对象是由环境变量中 ORACLE_SID 指定的,可以通过export 命令来改变它的值。例如: export ORACLE_SID=orcla

 

6、数据库监听服务的启动与关闭

 

启动监听器

 

lsnrctl start

 

关闭监听器

 

lsnrctl stop

 

这里可以在命令的末尾加上监听服务的名字(在 ORACLE_HOME/network/admin/listener.ora中配置),例如:lsnrctl start lsnr_ta

 

在双机热备系统中ORACLE的安装

 

1、磁盘状况描述

 

A机与B机的本地各有两块硬盘作镜像;

磁盘阵列划分成分别为TA和直销服务的两个物理卷;

正常情况下:A机接管为TA服务的物理卷;B机接管为直销服务的物理卷。

 

2、安装方法

 

1.在A机和B机上创建dba组和oracle用户,两台机器的id需要保持一致,使用id命令看用户属性: id oracle

uid=203(oracle) gid=0(system) groups=202(dba)

2.在A机和B机上同时开始安装数据库,在A机指定数据库实例名时,指定TA的实例名,例如:SID=orcla;在B机指定数据库实例名时,指定直销的实例名,例如:SID=orclb;

3.在A机指定数据库文件的路径时,指定TA在磁盘阵列上的路径,例如:Directory For DataBase Files:/adata/orcla;在B机指定数据库文件的路径时,指定直销在磁盘阵列上

 

的路径,例如:Directory For DataBase Files:/bdata/orclb;

4.ORACLE安装结束后,使A机接管直销的物理卷、B机接管TA的物理卷。操作步骤如下:

在A机上unmount A机的文件系统 unmount /adata;

在A机上Deactivate smitty vg -> Deactivate a Volume Group -> 在 Volume Group Name 栏内选择 adatavg;

在B机上unmount B机的文件系统 /bdata命令: unmount /bdata;

在B机上smitty vg -> Deactivate a Volume Group -> 在 Volume Group Name 栏内选择 bdatavg;

在A机上激活直销卷组smitty vg -> Activate a Volume Group -> 在 Volume Group Name 栏内选择 bdatavg;

在A机上装配文件系统 mount /bdata;

在B机上激活TA卷组smitty vg -> Activate a Volume Group -> 在 Volume Group Name 栏内选择 adatavg;

在B机上装配文件系统 mount /adata;

 

5.运行 dbca 创建数据库实例,在A机上创建直销的实例,在指定数据库文件的路径时,指定直销在磁盘阵列上的路径,覆盖原来在B机创建的数据库文件,例如:Directory For

DataBase Files:/bdata/orclb;在B机上创建TA的实例,在指定数据库文件的路径时,指定TA在磁盘阵列上的路径,覆盖原来在A机创建的数据库文件,例如:Directory For

 

DataBase Files:/bdata/orcla;注意创建的实例名和指定的数据库文件路径要和前面创建的实例保持一致。(在指定数据库文件路径时,所有.CTL、.log、.DBF、.ORA的文件路

 

径均需要手工指定到同一文件路径下)。

 

6.把B机 $ORACLE_HOME/dbs/目录下 orapworcla和spfileorcla.ora两个文件拷贝到A机上$ORACLE_HOME/dbs/目录下;把A机 $ORACLE_HOME/dbs/目录下 orapworclb和

 

spfileorclb.ora两个文件拷贝到B机上$ORACLE_HOME/dbs/目录下;

7.修改两台机器$ORACLE_HOME/network/admin/目录下 listener.ora和tnsnames.ora两个文件并保持一致,示例:

 

 

listener.ora
LSNR_A =
(DEscriptION_LIST =
(DEscriptION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 202.168.0.1)(PORT = 1521))
)
)
)

LSNR_B =
(DEscriptION_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 202.168.0.2)(PORT = 1522))
)

SID_LIST_LSNR_A =
(SID_LIST =
(SID_DESC =
(PROGRAM = extproc)
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /home/oracle/ora9)
)
(SID_DESC =
(GLOBAL_DBNAME = orcla)
(ORACLE_HOME = /home/oracle/ora9)
(SID_NAME = orcla)
)
)

SID_LIST_LSNR_B =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orclb)
(ORACLE_HOME = /home/oracle/ora9)
(SID_NAME = orclb)
)
) 

tnsnames.ora
orcla =
(DEscriptION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 202.168.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcla)
)
)

orclb =
(DEscriptION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 202.168.0.2)(PORT = 1522))
)
(CONNECT_DATA =
(SERVICE_NAME = orclb)
)
)

 

 

 

8.在A机上ORACLE环境变量的ORACLE_SID指定TA的实例名,例如:ORACLE_SID=orcla;在B机上ORACLE环境变量的ORACLE_SID指定直销的实例名,例如:ORACLE_SID=orclb;


最新评论共有 4 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册