配置数据库DBConsole,解决EM启动问题

在下面场景下,需要重新配置DBConsole:

1.em启动不了

2.新增数据库

3. dbca与emca提示”严重: 监听程序未启动或数据库服务未注册到该监听程序。启动该监听程序并注册数据库服务, 然后重新运行 EM Configuration Assistant”

1和3可能是修改了主机名,或网络关系,在主机名如“zior”和”localhost”之间切换,导致LISTENER失效。

需要用LISTENER向导或直接修改LISTENER.ora配置,因为此配置文件对大小写、空格等异常敏感,建议使用Net configuration Assistant

为保证监听器可动态注册,记得去掉本地listener.ora文件中sid_list_listener段。

重新配置DBConsole步骤:

1.重启监听器

>lsnrctl stop

>lsnrctl start

2.设置主机名环境参数

>set oracle_hostname=zior

//zior为主机名,根据需要自行修改

3.重新创建dbconsole资源库,新删后增

>emca -config dbcontrol db -repos recreate

向导中会提示制定数据库sid,sys用户密码,监听器端口及位置等。

耐心等待几分钟,就会为该数据库配置好dbconsole服务。

要查询访问em dbconsole的链接、端口号,使用emctl status dbconsole,

如果有多个数据库实例,需要先设置unqname

>set oracle_unqname=orcl

>emctl status dbconsole

 

emca具体使用命令:

Drop
emca -deconfig dbcontrol db -repos drop

Create
emca -config dbcontrol db -repos create

Recreate
emca -config dbcontrol db -repos recreate

有时候尽管执行drop,但依旧报错:

ora-20001: SYSMAN already exist…  ORA-06512

这时需要手工修正:

Drop user sysman cascade;
drop role mgmt_user;
drop user mgmt_view cascade;
drop public synonym mgmt_target_blackouts;
drop public synonym setemviewusercontext;

删除em相关资源,然后继续create

参考http://blog.mclaughlinsoftware.com/oracle-architecture-configuration/changing-windows-hostname-and-oracle-enterprise-manager/

Tagged , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *