最近接手了一个基于windows2003的oracle10的数据库。发现里面的数据库的em用不起来,我就重建了一把。
emca -repos drop
emca -repos create
emca -config dbcontrol db
在过程当中遇到了两个问题:
一.到第三步的时候一直有问题dbsnmp用户的密码在修改以后验证的时候一直通不过,也不报错,就死在那边
做以下操作解决:
1.Stop dbconsole
2.set new password for dbsnmp
3.test dbsnmp new password by connect
4.edit $ORACLE_HOME/host_sid/sysman/emd/targets.xml
Search for the line:
<Property NAME="UserName" VALUE="6f5848a4f53a2d0a" ENCRYPTED="TRUE"/>
<Property NAME="password" VALUE="829e1a25401de489" ENCRYPTED="TRUE"/>
Replace the encrypted value by the new password value
Replace TRUE by FALSE
5.restart dbconsole二.
再启动,还是有问题,没有具体报错,把日志中的相关信息baidu以后,做如下处理:将主机名子unicom改为Unicom(就是把机器名的第一个字母更改为大写)
再操作,可以将三个命令顺利执行完。em重建以后,可以正常登录,但是在em主页面中,有如下报错:
java.lang.Exception: Exception in sending Request :: null。而且我只能进“主目录”、“维护”标签,如果选择“性能”、“管理”标签,就会自动注销退出。
网上搜了一把,基本上都说是时区的问题,可是我机器以及数据库的时区都是正常的,但是我还是尽量按照他们说的去做了:
但是在执行完“emctl resetTZ agent”命令后,提示需要进入sql的sysman用户模式,执行一下以下语句:
exec mgmt_target.set_agent_tzrgn('Unicom:1830','Asia/Shanghai')
但是我执行的结果有以下报错:
SQL> exec mgmt_target.set_agent_tzrgn('Unicom:1830','Asia/Shanghai')
BEGIN mgmt_target.set_agent_tzrgn('Unicom:1830','Asia/Shanghai'); END;*
第 1 行出现错误:
ORA-20233: Invalid agent name Unicom:1830
ORA-06512: 在 "SYSMAN.MGMT_TARGET", line 3683
ORA-06512: 在 line 1已经困扰我四天了,拜求大师帮忙看看,给些意见,谢谢。
emca -repos drop
emca -repos create
emca -config dbcontrol db
在过程当中遇到了两个问题:
一.到第三步的时候一直有问题dbsnmp用户的密码在修改以后验证的时候一直通不过,也不报错,就死在那边
做以下操作解决:
1.Stop dbconsole
2.set new password for dbsnmp
3.test dbsnmp new password by connect
4.edit $ORACLE_HOME/host_sid/sysman/emd/targets.xml
Search for the line:
<Property NAME="UserName" VALUE="6f5848a4f53a2d0a" ENCRYPTED="TRUE"/>
<Property NAME="password" VALUE="829e1a25401de489" ENCRYPTED="TRUE"/>
Replace the encrypted value by the new password value
Replace TRUE by FALSE
5.restart dbconsole二.
再启动,还是有问题,没有具体报错,把日志中的相关信息baidu以后,做如下处理:将主机名子unicom改为Unicom(就是把机器名的第一个字母更改为大写)
再操作,可以将三个命令顺利执行完。em重建以后,可以正常登录,但是在em主页面中,有如下报错:
java.lang.Exception: Exception in sending Request :: null。而且我只能进“主目录”、“维护”标签,如果选择“性能”、“管理”标签,就会自动注销退出。
网上搜了一把,基本上都说是时区的问题,可是我机器以及数据库的时区都是正常的,但是我还是尽量按照他们说的去做了:
但是在执行完“emctl resetTZ agent”命令后,提示需要进入sql的sysman用户模式,执行一下以下语句:
exec mgmt_target.set_agent_tzrgn('Unicom:1830','Asia/Shanghai')
但是我执行的结果有以下报错:
SQL> exec mgmt_target.set_agent_tzrgn('Unicom:1830','Asia/Shanghai')
BEGIN mgmt_target.set_agent_tzrgn('Unicom:1830','Asia/Shanghai'); END;*
第 1 行出现错误:
ORA-20233: Invalid agent name Unicom:1830
ORA-06512: 在 "SYSMAN.MGMT_TARGET", line 3683
ORA-06512: 在 line 1已经困扰我四天了,拜求大师帮忙看看,给些意见,谢谢。
解决方案 »
- 如何查看ORACLE数据结构
- oracle中,我做了个多条数据插入报错了 ORA-02287: sequence number not allowed here
- 求助,存储过程运行2次的问题
- STime时间 如何转换成字符串 大难题,求高手。。
- 如何获得oracle中一个字符串中的一个字符
- Win7 32位的操作系统下的ORACLE 11G R2安装
- spool导出一个文本文件,如何得到导出的记录数?
- 谁帮我看看这条语句哪里错了?
- 各位兄弟姐妹有oracle的文档吗,传我一份,谢谢了
- 一个酷似本论坛的SQL语句设计问题,急!!
- ORACLE中怎么显示一个过程中的游标值
- 导入dmp文件报错ORA-12154: TNS: 无法解析指定的连接标识符
Oracle 安装好后 hostname是不能乱改的.How to change the Hostname of the Windows when the10Gwith ASM being used
Solution
When changing the Hostname, 4 files would be affected.
1) Tnsnames.ora
2) listener.ora
3) Oraclecsservice
4) Enterprise Manager 1、D:\oracle\product\10.2.0\db_1目录下的 原计算机名.orcl------>修改后的计算机名.orcl2、D:\oracle\product\10.2.0\db_1\oc4j\j2ee目录下的 OC4J_DBConsole_原计算机名_orcl----->OC4J_DBConsole_修改后的计算机名_orcl3、D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN目录下的 listener.ora、sqlnet.ora、tnsnames.ora文件中的local名称4、配置em
/*重新配置dbcosole
emca -repos drop
emca -repos create
emca -config dbcontrol db
emctl start dbconsole
*/ 基本上是删不干净的,所以使用下面的方法当安装oracle的机器变了机器名,或者变了ip地址。那么原来的dbconsole就起不来了。当在dos下运行:emctl start dbconsole 的时候报错。
解决办法
同样适用于windows,unix,linux其他原因导致DBCONSOLE无法正常启动。1,修改DBSNMP密码:
重新配置DBCONSOLE,需要输入DBSNMP密码,但任何密码都会显示错误,需要预先修改。
sql>alter user dbsnmp identified by xxx;2,删除早期DBCONSOLE创建的用户:sql>drop role MGMT_USER;
sql>drop user MGMT_VIEW cascade;
sql>drop user sysman cascade;3,删除早期DBCONSOLE创建的对象:
sql>drop PUBLIC SYNONYM MGMT_TARGET_BLACKOUTS;
sql>drop public synonym SETEMVIEWUSERCONTEXT;
4.C:Documents and SettingsAdministrator>emca -config dbcontrol db -repos recreat
e -HOST wanglibo
具体步骤如下:
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
C:Documents and SettingsAdministrator>emca -config dbcontrol db -repos recreat
e -HOST wanglibo
希望对你有帮助
Microsoft Windows [版本 6.1.7600]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
C:\Users\Administrator>hostname
ggsjy
C:\Users\Administrator>emctl start dbconsole
Environment variable ORACLE_SID not defined. Please define it.
C:\Users\Administrator>set ORACLE_SID=orcl
C:\Users\Administrator>emctl start dbconsole
OC4J Configuration issue. D:\oracle\product\10.2.0\db_1/oc4j/j2ee/OC4J_DBConsole
_172.24.34.191_orcl not found.
C:\Users\Administrator>emctl start dbconsole
Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
Copyright (c) 1996, 2006 Oracle Corporation. All rights reserved.
http://WIN-LOSGI0TCOG0:1158/em/console/aboutApplication
Starting Oracle Enterprise Manager 10g Database Control ...OracleDBConsoleorcl
服务正在启动 .
OracleDBConsoleorcl 服务无法启动。
系统出错。
发生系统错误 3。
系统找不到指定的路径。
-----------------------------------------------------------------------------------
解决方案:
C:\Users\Administrator>sqlplus /nolog
SQL*Plus: Release 10.2.0.3.0 - Production on 星期五 9月 24 18:29:07 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
SQL> conn sys as sysdba
输入口令:
已连接。
SQL> drop public synonym setemviewusercontext;
同义词已删除。
SQL> drop public synonym mgmt_target_blackouts;
同义词已删除。
SQL> drop role mgmt_user;
角色已删除。
SQL> drop user mgmt_view cascade;
用户已删除。
SQL> drop user sysman cascade;
用户已删除。
SQL> exit
从 Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning, OLAP and Data Mining options 断开
C:\Users\Administrator>emca -config dbcontrol db -repos create
EMCA 开始于 2010-9-24 20:10:10
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 用户的口令:
SYSMAN 用户的口令: 通知的电子邮件地址 (可选):
通知的发件 (SMTP) 服务器 (可选):
-----------------------------------------------------------------
已指定以下设置
数据库 ORACLE_HOME ................ D:\oracle\product\10.2.0\db_1
数据库主机名 ................ ggsjy
监听程序端口号 ................ 1521
数据库 SID ................ orcl
通知的电子邮件地址 ...............
通知的发件 (SMTP) 服务器 ...............
-----------------------------------------------------------------
是否继续? [yes(Y)/no(N)]: y
2010-9-24 20:11:21 oracle.sysman.emcp.EMConfig perform
信息: 正在将此操作记录到 D:\oracle\product\10.2.0\db_1\cfgtoollogs\emca\orcl\emc
a_2010-09-24_08-10-10-下午.log。
2010-9-24 20:11:30 oracle.sysman.emcp.util.DBControlUtil stopOMS
信息: 正在停止 Database Control (此操作可能需要一段时间)...
2010-9-24 20:11:35 oracle.sysman.emcp.EMReposConfig createRepository
信息: 正在创建 EM 资料档案库 (此操作可能需要一段时间)...
2010-9-24 20:13:36 oracle.sysman.emcp.EMReposConfig invoke
信息: 已成功创建资料档案库
2010-9-24 20:13:47 oracle.sysman.emcp.util.DBControlUtil startOMS
信息: 正在启动 Database Control (此操作可能需要一段时间)...
2010-9-24 20:14:27 oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: 已成功启动 Database Control
2010-9-24 20:14:27 oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: >>>>>>>>>>> Database Control URL 为 http://ggsjy:1158/em <<<<<<<<<<<
已成功完成 Enterprise Manager 的配置
EMCA 结束于 2010-9-24 20:14:27
C:\Users\Administrator>emctl status dbconsole
Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
Copyright (c) 1996, 2006 Oracle Corporation. All rights reserved.
http://ggsjy:1158/em/console/aboutApplication
Oracle Enterprise Manager 10g is running.
------------------------------------------------------------------
Logs are generated in directory D:\oracle\product\10.2.0\db_1/ggsjy_orcl/sysman/
log
-----------------------------------------------------------------------------------
总结:
Oracle emca dbconsole手动创建步骤:
1,修改DBSNMP密码:
重新配置DBCONSOLE,需要输入DBSNMP密码,但任何密码都会显示错误,需要预先修改。
sql>alter user dbsnmp identified by xxx;
2,删除早期DBCONSOLE创建的用户:
sql>drop role MGMT_USER;
sql>drop user MGMT_VIEW cascade;
sql>drop user sysman cascade;
3,删除早期DBCONSOLE创建的对象:
sql>drop PUBLIC SYNONYM MGMT_TARGET_BLACKOUTS;
sql>drop public synonym SETEMVIEWUSERCONTEXT;
4,重新创建DBCONSOLE:(如果是在windows下,要先到注册表删除DBCONSOLE的服务,重启电脑)
$emca -config dbcontrol db -repos create
根据提示,先输入SID,再输入Y继续;
输入端口1521,输入SYS密码,输入DBSNMP密码,输入SYSMAN 密码,输入Y继续
-------------------------------------------
常用emca配置命令:
OEM常用的命令,及实例步骤.
创建一个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
配置dbconsole的步骤
emca -repos create
emca -config dbcontrol db
emctl start dbconsole
重新配置dbconsole的步骤
emca -repos drop
emca -repos create
emca -config dbcontrol db
emctl start dbconsole
一下是当时查考的资料:
This fixed my em problem.1. Remove the following registry entry :
FROM HKEY_LOCAL_MACHINE/SYSTEM/CURRENTCONTROLSET/SERVICES/ORACLEDBCONSOLE<SID>
After this reboot the machine.Make sure that the database and the listener is up and running.2. Logon SQLPLUS as user SYS and drop the sysman account and mangement objects:a. drop user sysman cascade;
b. drop role MGMT_USER;
c. drop user MGMT_VIEW cascade;
d. drop public synonym MGMT_TARGET_BLACKOUTS;
e. drop public synonym SETEMVIEWUSERCONTEXT;3. Manually remove the following folders, if it exist:
ORACLE_HOME/host_sid
ORACLE_HOME\oc4j\j2ee\OC4J_DBConsole_host_sid4.Set the ORACLE_HOME and ORACLE_SID. Now from ORACLE_HOME/bin issue the following command:
emca -config dbcontrol db -repos createHope it helps.不过在仔细对比以后发现在sql中删除用户的操作似乎有些差别,所以我刚刚也照3楼的操作去做了,还是不行。还是老样子的报错。
SQL> exec mgmt_target.set_agent_tzrgn('ken-pc:3938','Asia/Chungking')
BEGIN mgmt_target.set_agent_tzrgn('ken-pc:3938','Asia/Chungking'); END;*
第 1 行出现错误:
ORA-20233: Invalid agent name ken-pc:3938
ORA-06512: 在 "SYSMAN.MGMT_TARGET", line 3683
ORA-06512: 在 line 1
SQL> select target_name from mgmt_targets where target_type='oracle_emd';TARGET_NAME
--------------------------------------------------------------------------------
Ken-PC:3938SQL> exec mgmt_target.set_agent_tzrgn('Ken-PC:3938','Asia/Chungking')PL/SQL 过程已成功完成。SQL> commit;提交完成。