Enterprise Manager配置问题解决
自己数据库上的Enterprise Manager一直没法使用,今天想着怎么也得给整好了。以下是关于如何让Enterprise Manager重新生效的过程。
检查em启动状态:
C:\Documents and Settings\Administrator>emctl status dbconsole
提示:Environment variable ORACLE_SID not defined. Please define it.
解决办法:重新设置oracle_sid,做如下操作:
C:\Documents and Settings\Administrator>set oracle_sid=fgisdb
然后再次利用emctl status dbconsole命令查看:
C:\Documents and Settings\Administrator>emctl status dbconsole
Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved.
http://LENOVO-D5865327:1158/em/console/aboutApplication
Oracle Enterprise Manager 10g is not running.
由上述可以看到,em未启动,因此利用emctl start dbconsole命令启动:
C:\Documents and Settings\Administrator>emctl start dbconsole
Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved.
http://LENOVO-D5865327:1158/em/console/aboutApplication
Agent Version : 10.1.0.4.1
OMS Version : Unknown
Protocol Version : 10.1.0.2.0
Agent Home : D:\oracle\product\10.2.0\db_1\LENOVO-D5865327_fgisdb
Agent binaries : D:\oracle\product\10.2.0\db_1
Agent Process ID : 5972
Agent Process ID : 5972
Agent URL : http://LENOVO-D5865327:3938/emd/main
Started at : 2011-06-19 14:33:04
Started by user : SYSTEM
Last Reload : 2011-06-19 15:14:14
Last successful upload : (none)
Last attempted upload : (none)
Total Megabytes of XML files uploaded so far : 0.00
Number of XML files pending upload : 1164
Size of XML files pending upload(MB) : 9.25
Available disk space on upload filesystem : 3.90%
Agent is already started. Will restart the agent
此命令的语法是:
NET STOP
Service
启动失败了。
因此使用服务界面直接手动启动该dbconsole服务,也提示:
在本地计算机无法启动oracledbconsole服务。错误1053:服务没有及时响应启动或控制请求
因此在网上搜到说可以重新配置em,于是做如下操作:
C:\Documents and Settings\Administrator>emca -config dbcontrol db
EMCA 开始于 2011-6-19 16:50:44
EM Configuration Assistant 10.2.0.1.0 正式版
版权所有 (c) 2003, 2005, Oracle。保留所有权利。
输入以下信息:
数据库 SID: fgisdb
已为数据库 fgisdb 配置了 Database Control
您已选择配置 Database Control, 以便管理数据库 fgisdb
此操作将移去现有配置和默认设置, 并重新执行配置
是否继续? [yes(Y)/no(N)]: y
监听程序端口号: 1521
SYS 用户的口令:
DBSNMP 用户的口令:
SYSMAN 用户的口令:
SYSMAN 用户的口令: 通知的电子邮件地址 (可选):
通知的发件 (SMTP) 服务器 (可选):
-----------------------------------------------------------------
已指定以下设置
数据库 ORACLE_HOME ................ D:\oracle\product\10.2.0\db_1
数据库主机名 ................ LENOVO-D5865327
监听程序端口号 ................ 1521
数据库 SID ................ fgisdb
通知的电子邮件地址 ...............
通知的发件 (SMTP) 服务器 ...............
-----------------------------------------------------------------
是否继续? [yes(Y)/no(N)]: y
2011-6-19 16:51:34 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\fgisdb\e
mca_2011-06-19_04-50-44-下午.log。
2011-6-19 16:52:03 oracle.sysman.emcp.util.DBControlUtil stopOMS
信息: 正在停止 Database Control (此操作可能需要一段时间)...
2011-6-19 16:52:53 oracle.sysman.emcp.EMConfig perform
严重: 无法启动 Database Control。 以下端口已被使用: [EM 代理端口:3938]。
有关详细资料, 请参阅 D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\fgisdb\emca_
2011-06-19_04-50-44-下午.log 中的日志文件。
无法完成配置。 有关详细资料, 请参阅 D:\oracle\product\10.2.0\db_1\cfgtoollogs\em
ca\fgisdb\emca_2011-06-19_04-50-44-下午.log 中的日志文件。
但是查看了3938端口就是被emagent所使用的。
后来干脆将emca删除决定重新创建,如下操作:
C:\Documents and Settings\Administrator>emca -repos drop
EMCA 开始于 2011-6-19 16:56:08
EM Configuration Assistant 10.2.0.1.0 正式版
版权所有 (c) 2003, 2005, Oracle。保留所有权利。
输入以下信息:
数据库 SID: fgisdb
监听程序端口号: 1521
SYS 用户的口令:
SYSMAN 用户的口令:
是否继续? [yes(Y)/no(N)]: y
2011-6-19 16:56:26 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到
D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\fgisdb\e
mca_2011-06-19_04-56-08-下午.log。
2011-6-19 16:56:30 oracle.sysman.emcp.EMReposConfig dropRepository
信息: 正在删除 EM 资料档案库 (此操作可能需要一段时间)...
2011-6-19 18:26:24 oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功删除资料档案库
已成功完成 Enterprise Manager 的配置
EMCA 结束于 2011-6-19 18:26:26
C:\Documents and Settings\Administrator>emca -repos create
EMCA 开始于 2011-6-19 18:31:29
EM Configuration Assistant 10.2.0.1.0 正式版
版权所有 (c) 2003, 2005, Oracle。保留所有权利。
输入以下信息:
数据库 SID: fgisdb
监听程序端口号: 1521
SYS 用户的口令:
SYSMAN 用户的口令:
SYSMAN 用户的口令:
是否继续? [yes(Y)/no(N)]: y
2011-6-19 18:31:44 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到
D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\fgisdb\e
mca_2011-06-19_06-31-29-下午.log。
2011-6-19 18:31:44 oracle.sysman.emcp.EMReposConfig createRepository
信息: 正在创建 EM 资料档案库 (此操作可能需要一段时间)...
2011-6-19 18:31:44 oracle.sysman.emcp.EMReposConfig invoke
严重: 创建资料档案库时出错
2011-6-19 18:31:44 oracle.sysman.emcp.EMReposConfig invoke
信息: 有关详细资料, 请参阅
D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\fgisdb
\emca_repos_create_<日期>.log 中的日志文件。
2011-6-19 18:31:44 oracle.sysman.emcp.EMConfig perform
严重: 创建资料档案库时出错
有关详细资料, 请参阅
D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\fgisdb\emca_
2011-06-19_06-31-29-下午.log 中的日志文件。
无法完成配置请参阅 。 有关详细资料,
D:\oracle\product\10.2.0\db_1\cfgtoollogs\em
ca\fgisdb\emca_2011-06-19_06-31-29-下午.log 中的日志文件。
查看“D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\fgisdb\emca_
2011-06-19_06-31-29-下午.log” 中的日志文件,该日志内容如下所示:
Check if repos user already exists.
原值 6: WHERE username=UPPER('&EM_REPOS_USER');
新值 6: WHERE username=UPPER('SYSMAN');
原值 8: IF ( '&EM_CHECK_TYPE' = 'EXISTS') THEN
新值 8: IF ( 'NOT_EXISTS' = 'EXISTS') THEN
原值 11: raise_application_error(-20000, '&EM_REPOS_USER does not exists..');
新值 11: raise_application_error(-20000, 'SYSMAN does not exists..');
原值 14: ELSIF ( '&EM_CHECK_TYPE' = 'NOT_EXISTS' ) THEN
新值 14: ELSIF ( 'NOT_EXISTS' = 'NOT_EXISTS' ) THEN
原值 17: raise_application_error(-20001, '&EM_REPOS_USER already exists..');
新值 17: raise_application_error(-20001, 'SYSMAN already exists..');
原值 21: raise_application_error(-20002, 'Invalid Check type &EM_CHECK_TYPE');
新值 21: raise_application_error(-20002, 'Invalid Check type NOT_EXISTS');
DECLARE
*
第 1 行出现错误:
ORA-20001: SYSMAN already exists..
ORA-06512: 在 line 17
后来又重新执行了emca -repos drop操作,然后在执行emca -repos create。竟然成功了。
创建成功后,心想这回总行了吧。因此再次执行emctl start dbconsole,但还是和原来一样,没有启动成功。
Agent is already started. Will restart the agent
此命令的语法是:
NET STOP
Service
想了想手动到服务界面去启动,这回竟然启动成功了。
http://lenovo-d5865327:1158/em该网址总算是成功打开了。
奇怪,怎么用命令启动不行呢。
2011-9-12补充
今天发现计算机名修改后,em的重新使用不用重建emca也可以。做如下修改:
2、emca -config dbcontrol db 重新配置
EMCA 开始于 2011-9-12 16:55:59
EM Configuration Assistant 10.2.0.1.0 正式版
版权所有 (c) 2003, 2005, Oracle。保留所有权利。
输入以下信息:
数据库 SID: fgisdb
监听程序端口号: 1521
SYS 用户的口令:
DBSNMP 用户的口令:
SYSMAN 用户的口令:
SYSMAN 用户的口令: 通知的电子邮件地址 (可选): fyzh29@yahoo.com.cn
通知的发件 (SMTP) 服务器 (可选):
-----------------------------------------------------------------
已指定以下设置
数据库 ORACLE_HOME ................ D:\oracle\product\10.2.0\db_1
数据库主机名 ................ shq-gisxm11.sh.cnc.intra
监听程序端口号 ................ 1521
数据库 SID ................ fgisdb
通知的电子邮件地址 ............... fyzh29@yahoo.com.cn
通知的发件 (SMTP) 服务器 ...............
-----------------------------------------------------------------
是否继续? [yes(Y)/no(N)]: y
2011-9-12 16:56:44 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\fgisdb\e
mca_2011-09-12_04-55-58-下午.log。
2011-9-12 16:56:46 oracle.sysman.emcp.DatabaseChecks performReposChecks
警告: 'shared_pool_size' 必须大于等于 80 MB。
2011-9-12 16:56:54 oracle.sysman.emcp.util.PlatformInterface executeCommand
警告: 执行 CMD /C D:\oracle\product\10.2.0\db_1\bin\emctl.bat deploy dbconsole D
:\oracle\product\10.2.0\db_1\shq-gisxm11.sh.cnc.intra_fgisdb shq-gisxm11.sh.cnc.
intra:3938 shq-gisxm11.sh.cnc.intra fgisdb 时出错
2011-9-12 16:56:54 oracle.sysman.emcp.EMConfig perform
严重: 实例化 EM 配置文件时出错
有关详细资料, 请参阅 D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\fgisdb\emca_
2011-09-12_04-55-58-下午.log 中的日志文件。
无法完成配置。 有关详细资料, 请参阅 D:\oracle\product\10.2.0\db_1\cfgtoollogs\em
ca\fgisdb\emca_2011-09-12_04-55-58-下午.log 中的日志文件。
如上所示,由于共享池大小不够导致无法启动,因此修改共享池大小使之大于80M。然后再次执行如下操作进行配置即可。
C:\Documents and Settings\Administrator>emca -config dbcontrol db
EMCA 开始于 2011-9-12 17:03:53
EM Configuration Assistant 10.2.0.1.0 正式版
版权所有 (c) 2003, 2005, Oracle。保留所有权利。
输入以下信息:
数据库 SID: fgisdb
已为数据库 fgisdb 配置了 Database Control
您已选择配置 Database Control, 以便管理数据库 fgisdb
此操作将移去现有配置和默认设置, 并重新执行配置
是否继续? [yes(Y)/no(N)]: y
监听程序端口号: 1521
SYS 用户的口令:
DBSNMP 用户的口令:
SYSMAN 用户的口令:
SYSMAN 用户的口令: 通知的电子邮件地址 (可选): fyzh29@yahoo.com.cn
通知的发件 (SMTP) 服务器 (可选):
-----------------------------------------------------------------
已指定以下设置
数据库 ORACLE_HOME ................ D:\oracle\product\10.2.0\db_1
数据库主机名 ................ shq-gisxm11.sh.cnc.intra
监听程序端口号 ................ 1521
数据库 SID ................ fgisdb
通知的电子邮件地址 ............... fyzh29@yahoo.com.cn
通知的发件 (SMTP) 服务器 ...............
-----------------------------------------------------------------
是否继续? [yes(Y)/no(N)]: y
2011-9-12 17:04:26 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\fgisdb\e
mca_2011-09-12_05-03-53-下午.log。
2011-9-12 17:04:30 oracle.sysman.emcp.util.DBControlUtil stopOMS
信息: 正在停止 Database Control (此操作可能需要一段时间)...
2011-9-12 17:04:43 oracle.sysman.emcp.util.DBControlUtil startOMS
信息: 正在启动 Database Control (此操作可能需要一段时间)...
2011-9-12 17:05:36 oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: 已成功启动 Database Control
2011-9-12 17:05:36 oracle.sysman.emcp.EMDBPostConfig performConfiguration
警告: 无法创建 Database Control 快捷方式
2011-9-12 17:05:37 oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: >>>>>>>>>>> Database Control URL 为 http://shq-gisxm11.sh.cnc.intra:5500/e
m <<<<<<<<<<<
已成功完成 Enterprise Manager 的配置
EMCA 结束于 2011-9-12 17:05:37