李晓
摘要:针对Oracle系统的特点,结合在教学与科研过程中的具体实践,对网络同传系统下的Oracle配置的问题做了具体的探讨。
关键词:Oracle;网络同传;配置
1Oracle数据库管理系统的特点
Oracle系统是目前世界上使用最为广泛的数据库管理系统,目前在市场上占有主要份额。作为一种大型网络数据库管理系统,Oracle能够处理大批量数据,主要应用于商业和政府部门。
Oracle作为一种大型软件系统,会占用较多系统资源,而且结构较为复杂。
Oracle企业管理器(0racle Enterprise Manager,简称OEM)通过一组Oracle程序,为管理分布式环境提供管理服务。OEM包括了一组DBA工具和一个repository,以及一个图形化显示的控制台。而资料档案库就是OEM运行时所需要的数据库。用来存储它所管理的分布式数据库的数据库。
配置Enterprises Manager资料档案库的emca命令的常用格式如下。
emca-repos create——创建EM资料库
emca-repos recreate——重建EM资料库
emca-repos drop——删除EM资料库
emca-config dbcontrol db——配置Database Control
emca-deconfig dbcontrol db——删除Database Control的配置
emctl start dbconsole——設置环境变量,启动EM con-sole服务
emctl stop dbconsole——设置环境变量,停止EM con-sole服务
emca-config dbcontrol db-repos create
——创建em资料库,并配制Database Control
emca-deconfig dbcontrol db-repos drop
——删除Database Control,并删除em资料库
2网络同传系统的特点
网络同传系统可以用来进行多个计算机系统之间的批量复制。使用网络同传功能可以有效简化高校计算机房机房管理员的安装操作系统的工作时间,提高工作效率。
高校计算机房使用网络同传的基本方法如下:
首先选择一台电脑,安装好Windows操作系统、Oracle软件以及其他应用软件,进入网络同传界面,选择作为“发送端”。
计算机房中的其他多台电脑需要复制这台电脑硬盘上的所有系统软件及环境,则选择“网络同传”自动作为接收端登录。
通过网络同传,将发送端的系统信息包括硬盘上的数据同步到接收端,并可以对接收端进行IP地址设置和计算机名分配设置。
计算机房的硬盘数据网络同传操作,通常需要进行IP地址重新分配,确保每台IP地址不同,主机的计算机名不同。而这恰恰会导致Oracle系统的配置和使用问题。
3网络同传带来的Oracle系统问题
对于已经安装了Oracle软件的电脑系统,进行网络同传之后的结果是:安装Oracle的母盘所在计算机能完全正常使用,其他通过硬盘对拷的计算机,图形化界面的OEM和sql*plus等都会登录失败。
这是由于安装时默认使用计算机名作为系统文件夹的一部分,以及使用计算机名作为监听文件的信息组成部分等原因导致的。
如果对计算机房中的每个电脑手动进行修改,重复工作量太大,而且效率较低。
需要修改和重新配置的Oracle系统相关操作如下所述。
首先需要修改出现母盘所在计算机(也就是发送端)的主机名的一系列相关文件夹名称,例如:把原来的计算机主机名“L210-3”改为接收端的计算机主机名(每台接收端不同)。
然后修改监听文件listener.ora和tnsnames.ora文件中的主机名。
接下来重启OracleOraDblog_homelTNSListener,OracleSer-viceORCL两个服务,确保修改后的参数和文件生效。
最后执行emca命令,重建EM资料库,并且启动OracleDB-Consoleorcl服务。
4使用批处理自动修改系统配置
本文作者通过反复实践和测试,编写如下批处理程序,自动修改Oracle系统相关参数和配置,达到每台电脑都能正常使用Oracle系统。
以下程序代码中使用的机房中安装Oracle的母盘所在计算机主机名为"L210-3”,批处理程序代码内容如下。
REM修改文件夹名称
ren%ORACLE_HOME%\L210-3_orcl%COMPUTER-NAME%_orcl
ren%ORACLE_HOME%\oc4j\j2ee\oc4j_DBConsole_L210-3_orcl oc4j_DBConsole_%COMPUTERNAME%_orcl
REM 1.修改oracle安装路径下的\NETWORK~ADMIN\的listener.ora和tnsnames.ora文件中原来的主机名
REM调用子程序RepTxt将文件中主机名"L210-3"替换为“%COMPUTERNAME%”
call:RepTxt D:\oracle\product\10.2.0\db_2kNETWORK\AD—MINMistener.ora L210-3%COMPUTERNAME%
call:RepTxt D:\oracle\product\10.2.0\db_2kNETWORK\AD—MIN\tnsnames.ora L210-3%COMPUTERNAME%
REM 2.重启OracleOraDblog_homelTNSListener,Oracle-ServiceORCL两个服务
net start OracleOraDblog_homelTNSListener
net start OracleServiceORCL
echo 0n
REM 3.更新emca
set oracle_sid=orcl
emca-config dbcontrol d1)-repos recreate-silent-SID OR-CL-PORT
1521-SYS_PWD
orcll234-DBSNMP_PWD
or-c11234-SYSMAN_PWD orcll234
net start OracleDBConsoleorcl
ten子程序:替换文本文件中的指定字符串
:RepTxt
ten需要操作的文件
setfile=%1
ten需要替換的字符串
set findStr=%2
rem替换的目标字符串
set reolaceStr=%3
@echo off
setlocal enabledelavedexoansion
f叫/f"delims=”%%i in(type%file%)do(
set str=%%i
set str=!str:%findStr%=%reDlaceStr%!
echo!str!>>%file%~tmo
)
deI/a%file%
move%file%-tmo%file%
goto:eof
机房中通过硬盘对拷的计算机“L210-10”运行批处理程序的结果如图1至图4所示。
成功运行以上批处理程序之后,使用图形界面即可成功登录Oracle,系统可以正常使用。
5结束语
计算机房中的电脑通常数量较多,使用网络同传系统能够大大提高管理效率,但同传之后的系统经常存在各种各样的问题,导致Oracle图形界面无法正常登录。使用批处理程序自动修改Oracle系统配置,可以减少机房管理人员的重复工作,使Oracle系统得以正常登录,从而达到更好的使用效果。