ORACLE 11g, EM 无法启动的问题和重建(ZT)

原文请参考 http://blog.sina.com.cn/s/blog_7c855cf70100shrv.html

C:\Documents and Settings>emctl start dbconsole

Environment variable ORACLE_UNQNAME not defined. Please set ORACLE_UNQNAME to database unique name.

在10g/11g 中,我们可能会经常遇到OEM不能正常使用的问题,但导致问题的原因不尽相同,最后绝大多数问题可以通过emca 这个命令来解决,详细的说明可以查看连机帮助,下面给出一些常用的命令,及实例步骤.

C:\Documents and Settings>emca -config dbcontrol db -repos recreate


2011-6-29 10:04:19 oracle.sysman.emcp.EMConfig perform
严重: 监听程序未启动或数据库服务未注册到该监听程序。启动该监听程序并注册数据库服务, 然后重新运行 EM Configuration Assistant。
有关详细资料, 请参阅 D:\u01\app\oracle\cfgtoollogs\emca\ora11g\emca_2011_06_29_10_02_33.log 中的日志文件。
2011-6-29 10:04:19 oracle.sysman.emcp.EMConfig perform
配置: Stack Trace:
oracle.sysman.emcp.exception.EMConfigException: 监听程序未启动或数据库服务未注册到该监听程序。启动该监听程序并注册数据库服务, 然后重新运行 EM Configuration Assistant。

参照网友给出的分析修改 listener.ora 中的 HOST = localhost 为实际的主机名称重新创建 repos DB 即可.

经过仔细研究发现,在emConfig.log中使用如下hostname:

配置:  connectDesc : (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=BlueAeri-PC)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)))

但是在listener.ora中是这样的:

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

显然 BlueAeri-PC 是不能访问 localhost的,因此有两个解决方法:

1、单机用户适用:增加操作系统环境变量:ORACLE_HOSTNAME=localhost

2、服务器适用:在listener.ora中增加对BlueAeri-PC或ip地址的侦听



为了方便查阅现在也做个笔记.

创建一个EM资料库
emca -repos create

重建一个EM资料库
emca -repos recreate

删除一个EM资料库
emca -repos drop

配置数据库的 Database Control
emca -config dbcontrol db

删除数据库的 Database Control配置
emca -deconfig dbcontrol db

重新配置db control的端口,默认端口在1158
emca -reconfig ports
emca -reconfig ports -dbcontrol_http_port 1160
emca -reconfig ports -agent_port 3940

先设 置ORACLE_SID环境变量后,启动EM console服务
emctl start dbconsole

先设置 ORACLE_SID环境变量后,停止EM console服务
emctl stop dbconsole

先设置ORACLE_SID环 境变量后,查看EM console服务的状态
emctl status dbconsole



其它问题:

CONFIG: ORA-01017: invalid username/password; logon denied
这可能是DBSNMP 用户的口令错了,重新的修改一下:
alter user dbsnmp identified by oracle;
重新创建 repos db 即可.

C:\Documents and Settings>emca -repos recreate

遇到:OC4J Configuration issue 报错,检查发现指定目录下没有提示的文件夹,只有一个类似的,cp -r 一个提示的文件夹。重新执行emctl start dbconsole,成功。

查看当前状态:emctl status dbconsole

端口号可查看文件:$ORACLE_HOME/install/portlist.ini

下面是本机上的一个成功的例子, 仅供参考
C:\Documents and Settings>emca -repos recreate


EMCA 开始于 2011-6-29 10:10:45
EM Configuration Assistant, 11.2.0.0.2 正式版
版权所有 (c) 2003, 2005, Oracle。保留所有权利。

输入以下信息:
数据库 SID: ORCL
监听程序端口号: 1521
SYS 用户的口令:
SYSMAN 用户的口令:

是否继续? [是(Y)/否(N)]: Y
2011-6-29 10:11:03 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 D:\u01\app\oracle\cfgtoollogs\emca\ora11g\emca_2011_06_29_10_10_44.log。
2011-6-29 10:11:04 oracle.sysman.emcp.EMReposConfig invoke
信息: 正在删除 EM 资料档案库 (此操作可能需要一段时间)...
2011-6-29 10:11:09 oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功删除资料档案库
2011-6-29 10:11:10 oracle.sysman.emcp.EMReposConfig createRepository
信息: 正在创建 EM 资料档案库 (此操作可能需要一段时间)...
2011-6-29 10:19:20 oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功创建资料档案库
已成功完成 Enterprise Manager 的配置
EMCA 结束于 2011-6-29 10:19:21

C:\Documents and Settings>emca -config dbcontrol db



EMCA 开始于 2011-6-29 10:20:47
EM Configuration Assistant, 11.2.0.0.2 正式版
版权所有 (c) 2003, 2005, Oracle。保留所有权利。

输入以下信息:
数据库 SID: ORCL
监听程序端口号: 1521
监听程序 ORACLE_HOME [ D:\u01\app\oracle\product\11.2.0\dbhome_1 ]:
SYS 用户的口令:
DBSNMP 用户的口令:
SYSMAN 用户的口令:
通知的电子邮件地址 (可选): coolwinds@xxx.crop.com
通知的发件 (SMTP) 服务器 (可选): xxx.xxx.xxx.xxx
-----------------------------------------------------------------

已指定以下设置

数据库 ORACLE_HOME ................ D:\u01\app\oracle\product\11.2.0\dbhome_1

本地主机名 ................ coolwinds.xxx.crop.com
监听程序 ORACLE_HOME ................ D:\u01\app\oracle\product\11.2.0\dbhome_1
监听程序端口号 ................ 1521
数据库 SID ................ ORCL
通知的电子邮件地址 ............... coolwinds@xxx.crop.com
通知的发件 (SMTP) 服务器 ............... xxx.xxx.xxx.xxx

-----------------------------------------------------------------
是否继续? [是(Y)/否(N)]: Y
2011-6-29 10:21:56 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 D:\u01\app\oracle\cfgtoollogs\emca\ora11g\emca_2011_06_29_10_20_47.log。
2011-6-29 10:22:13 oracle.sysman.emcp.EMReposConfig uploadConfigDataToRepository

信息: 正在将配置数据上载到 EM 资料档案库 (此操作可能需要一段时间)...
2011-6-29 10:23:20 oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功上载配置数据
2011-6-29 10:23:33 oracle.sysman.emcp.util.DBControlUtil configureSoftwareLib
信息: 软件库已配置成功。
2011-6-29 10:23:33 oracle.sysman.emcp.EMDBPostConfig configureSoftwareLibrary
信息: 正在部署预配档案...
2011-6-29 10:24:49 oracle.sysman.emcp.EMDBPostConfig configureSoftwareLibrary
信息: 预配档案部署成功。
2011-6-29 10:24:49 oracle.sysman.emcp.util.DBControlUtil secureDBConsole
信息: 正在保护 Database Control (此操作可能需要一段时间)...
2011-6-29 10:25:03 oracle.sysman.emcp.util.DBControlUtil secureDBConsole
信息: 已成功保护 Database Control。
2011-6-29 10:25:04 oracle.sysman.emcp.util.DBControlUtil startOMS
信息: 正在启动 Database Control (此操作可能需要一段时间)...
2011-6-29 10:31:19 oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: 已成功启动 Database Control
2011-6-29 10:31:22 oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: >>>>>>>>>>> Database Control URL 为 https://coolwinds.xxx.crop.com:1158/em <<<<<<<<<<<
2011-6-29 10:32:14 oracle.sysman.emcp.EMDBPostConfig invoke
警告:
************************  WARNING  ************************

管理资料档案库已置于安全模式下, 在此模式下将对 Enterprise Manager 数据进行加密。
加密密钥已放置在文件 D:/u01/app/oracle/product/11.2.0/dbhome_1/coolwinds.xxx.crop.com_ora11g/sysman/config/emkey.ora 中。请务必备份此文件, 因为如果此文件丢失, 则加密数据将不可用。

***********************************************************
已成功完成 Enterprise Manager 的配置
EMCA 结束于 2011-6-29 10:32:15

---------------------------------------------------------------------------------------------------------

oracle11g查出EM的端口号  请到到这个目录下去找


C:\app\Administrator\product\11.1.0\db_1\sysman\config\emca.properties



DBCONTROL_HTTP_PORT_MIN=5500
DBCONTROL_HTTP_PORT_MAX=5519


# DB Control Http Port assigned by
IANA
DBCONTROL_HTTP_PORT_DEFAULT=1158


# RMI Port Ranges
RMI_PORT_MIN=5520
RMI_PORT_MAX=5539


# DB Control RMI Port assigned by IANA
RMI_PORT_DEFAULT=-1


# JMS Port Ranges
JMS_PORT_MIN=5540
JMS_PORT_MAX=5559

原文地址:https://www.cnblogs.com/liangqihui/p/2573087.html