修改机器名称后Oracle无法启动解决方法

在修改机器名称后遇到Oracle服务无法启动的问题,通过调整tnsnames.ora和listener.ora文件中的主机名配置,以及使用emca-configdbcontrol命令重新配置DatabaseControl,最终解决了Oracle服务启动的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

修改机器名称后Oracle无法启动

机器上一直装有Oracle,但是项目开发的数据库用的mysql,就没注意,突然有事要用Oracle,但是发生启动OracleDBConsole服务时出现如图的错误


启动OracleServiceORCL没有出现问题
启动监听服务时没有出现错误,看到是已启动,但是刷新服务列表监听器服务时没有起来。

开始还以为时Oracle不好使,从网上查到可能是修改机器名导致的问题,我对照了我的机器名和Oracle中配置的机器名果真不一样。

结合网上与自己的实际操作让Oracle能服务重新启动。
定义 原有的机器名叫test,
     新机器名叫test-123

一启动Oracle的监听服务
打开 oracle\product\10.2.0\db_1\NETWORK\ADMIN目录下的tnsnames.ora

,看到如下配置
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = HOST)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
将红色HOST修改为你现有的机器名称或者修改为你的ip这里我修改为机器名称 test-123

打开 oracle\product\10.2.0\db_1\NETWORK\ADMIN目录下的listener.ora

,看到如下配置
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = HOST)(PORT = 1521))
    )
  )
将红色HOST修改为你现有的机器名称或者修改为你的ip这里我修改为机器名称 test-123

启动数据库服务,启动监听服务没有出问题

此时启动OracleDBConsole还是出现问题
二启动OracleDBConsole服务
手工从cmd命令行,并将当前目录为BIN所在目录,执行命令 emctl start dbconsole
F:\software\oracle\product\10.2.0\db_1\BIN>emctl start dbconsole
提示错误
Environment variable ORACLE_SID not defined. Please define it.
设置sid为你的数据库实例名称 这里是默认 orcl
F:\software\oracle\product\10.2.0\db_1\BIN>set oracle_sid=orcl
F:\software\oracle\product\10.2.0\db_1\BIN>emctl start dbconsole OC4J Configuration issue. F:\software\oracle\product\10.2.0\db_1/oc4j/j2ee/OC4J_DBConsole_test-123_orcl not found.
按错误提示找到F:\software\oracle\product\10.2.0\db_1/oc4j/j2ee/该目录并将OC4J_DBConsole_test_orcl文件夹名称修改为OC4J_DBConsole_test-123_orcl
再次在cmd中执行出现错误
F:\software\oracle\product\10.2.0\db_1\BIN>set oracle_sid=orcl
F:\software\oracle\product\10.2.0\db_1\BIN>emctl start dbconsole

EM Configuration issue. F:\software\oracle\product\10.2.0 \db_1/test-123_orcl not found.
按错误提示找到F:\software\oracle\product\10.2.0\db_1该目录并将test_orcl文件夹名称修改为test-123_orcl

再执行命令出现错误
Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved.
http://test-123:1158/em/console/aboutApplication
Starting Oracle Enterprise Manager 10g Database Control

...OracleDBConsoleorcl
服务正在启动 .
OracleDBConsoleorcl 服务无法启动。

系统出错。

系统发生 3 错误。

系统找不到指定的路径。

重构 dbcontrol 配置文件

 

F:\software\oracle\product\10.2.0\db_1\BIN>emca -config dbcontrol db

EMCA 开始于 2010-6-12 11:28:24
EM Configuration Assistant 10.2.0.1.0 正式版
版权所有 (c) 2003, 2005, Oracle。保留所有权利。

输入以下信息:
数据库 SID: orcl
已为数据库 orcl 配置了 Database Control
您已选择配置 Database Control, 以便管理数据库 orcl
此操作将移去现有配置和默认设置, 并重新执行配置
是否继续? [yes(Y)/no(N)]: y
监听程序端口号: 1521
SYS 用户的口令:
DBSNMP 用户的口令:
SYSMAN 用户的口令:
通知的电子邮件地址 (可选):
通知的发件 (SMTP) 服务器 (可选):
-----------------------------------------------------------------

已指定以下设置

数据库 ORACLE_HOME ................ 

F:\software\oracle\product\10.2.0\db_1

数据库主机名 ................ test-123
监听程序端口号 ................ 1521
数据库 SID ................ orcl
通知的电子邮件地址 ...............
通知的发件 (SMTP) 服务器 ...............

-----------------------------------------------------------------
是否继续? [yes(Y)/no(N)]:y

2010-6-12 11:30:26 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 F:\software\oracle\product\10.2.0\db_1

\cfgtoollogs\emca
orcl\emca_2010-06-10_11-28-24-上午.log。
信息: 正在停止 Database Control (此操作可能需要一段时间)...
2010-6-12 11:30:39 oracle.sysman.emcp.util.DBControlUtil startOMS
信息: 正在启动 Database Control (此操作可能需要一段时间)...
2010-6-12 11:31:19 oracle.sysman.emcp.EMDBPostConfig 

performConfiguration
信息: 已成功启动 Database Control
2010-6-12 11:31:19 oracle.sysman.emcp.EMDBPostConfig 

performConfiguration
信息: >>>>>>>>>>> Database Control URL 为 http://test-123:1158/em 

<<<<<<<<<<<

已成功完成 Enterprise Manager 的配置
MCA 结束于 2010-6-12 11:31:19

 

备注 DBSNMP 与 SYSMAN 口令如果没有修改过为 默认为 system

这个Oracle服务修改完毕。

现在还有个问题 通过http://test-123:1158/em访问时,用system用户进入看到一般信息中主机名称没有改变,到现在也没找到原因。以后继续找吧

执行emca命令时

它会重新生成 oracle\product\10.2.0\db_1\sysman\config,oracle\product\10.2.0\db_1\oc4j\j2ee\OC4J_DBConsole  中的配置文件,并由oracle\product\10.2.0\db_1\oc4j\j2ee\OC4J_DBConsole 中文件生成 oracle\product\10.2.0\db_1\oc4j\j2ee\OC4J_DBConsole_test-123_orcl\中所有的配置文件

emca命令执行的日志 F:\software\oracle\product\10.2.0\db_1\cfgtoollogs\emca\orcl 目录下有兴趣的可以看看,emca是怎么重构用户的过程。
监听的日志
F:\software\oracle\product\10.2.0\db_1\network\log\listener.log的

日志信息
F:\software\oracle\product\10.2.0\db_1\network\trace\listener.trc

的跟踪信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值