在已经安装Oracle9i的服务器上安装Oracle10g(转)

 

最近因工作需要, 需要在本机安装Oracle10g, 之前本机已经安装了一个Oracle9i, 后来在安装完Oracle10g 之后, 发现Home Selector 中还是只有一个Home, 报告的错误是: "there is only one(1) oracle home defined on this machine..." , 因为当时10g9i 没有装在同一个目录中, 所以以为是目录问题, 然后把10g 卸载了, 重新安装后还是存在这个问题, 这个时候, 灵机一动, 原来有一台服务器上安装了一个Oracle9iOracle form, 但是服务器上的Home Selector 中是可以在Oracle9iOracle form 之间切换的, 于是把注册表打开, 研究了一下, 惊喜的发现:

 

HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/ALL_HOMES/ 下面有一个ID0, 里面包含三个键值: NAME,PATH,NLS_LANG, 于是在本机注册表中新建了一个ID1,ID0 里面的三个键值如法炮制, 其中的PATH 指向10g 的安装目录, 然后再启动Home Selector, 问题解决了.

 

修改后的注册表内容如下:

 

Windows Registry Editor Version 5 . 00

 

[HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/ALL_HOMES]

"HOME_COUNTER" = "1"

"DEFAULT_HOME" = "OraHome92"

"LAST_HOME" = "0"

 

[HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/ALL_HOMES/ID0]

"NAME" = "OraHome92"

"PATH" = "D://oracle//ora92"

"NLS_LANG" = "NA"

 

[HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/ALL_HOMES/ID1]

"NAME" ="OraHome10"

"PATH" ="F://oracle//oracle10g"

"NLS_LANG" ="NA"

 

最后, 还要谈一谈listener 配置和tnsnames 配置的问题:

 

因为Oracle 默认端口为1521, 本机的1521 已被Oracle9ilistener 占据, 所以, 最终把Oracle10glistener 端口号设置成了另外一个端口1522, 请注意, 在使用10gNet Configuration Assistant 进行listener 配置 时, 一定不要修改listener 的任何默认设置: 名称(LISTENER) 或端口号( 1521 )( 因为如果修改了默认名称或者端口号会造成在Windows 服务管理器中找不到10glistener 服务的问题), 配置完成后,Oracle 应用程序会自动将9ilistener 停止, 因为其端口1521 与当前的10glistener 冲突了, 请保持镇定, 先在Windows 服务管理器中手动停止10glistener 服务( 本机名称为OracleOraDb10g_home1TNSListener), 然后进入D: /oracle/product/ 10 . 2 . 0 /db_1/NETWORK/ADMIN( 本机安装目录), 在文本编辑器中修改listener.oraLISTENER 的端口号为1522, 保存listener.ora 文件, 最后,Windows 服务管理器中分别手动启动9i10glistener 服务( 本机名称分别为OracleOraHome92TNSListenerOracleOraDb10g_home1TNSListener), 如你所愿, 两个listener 服务都会成功启动.

 

剩下的就是本地Net 服务名的配置了, 也就是tnsnames 的配置, 配置过程与9i 相同, 唯一需要注意的就是把端口号修改为1522 即可.

 

在本机调试的时候, 可以依据需要利用Home Selector9i10g 之间自由切换, 同时, 其他机器请求本机的10g9i 服务均一切正常.

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值