重建oracle的em

Posted 我思故我在我有我精彩--liangqihui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了重建oracle的em相关的知识,希望对你有一定的参考价值。

重建oracle的em

 

今天不知道怎么,心血来潮,就把本机从域里退了出去,然后准备把oracle11g的control给处理处理

一开始也没怎么用心,上网随便找了点资料,就照着干了,然后什么都没干成,还把东西搞坏了。

没办法,只得好好下点功夫了。

 

上网找了些资料,很多是关于10g的em重建,经过多次操作

也还是没解决什么,反而把服务里的control给搞没了。

 

看来,网上也靠不住了,得靠自己了。

 

好了,下面是我自己的解决方法:

 

1、不管什么情况,在doc命令提示符下执行(如果服务里的control还在,停了它,不过估计根本启不来)

emca -repos drop

好吧,虽然说网上靠不住,不过这也是在网上学来的。

 

2、进sql命令提示符

等等,怎么进sql命令提示符?额,也顺便写一下吧,以前数据库跑不起来时,上网找资料重建spfile也说在命令提示符下干嘛干嘛,可怜我数据库都进不了,都不知哪输sql去,那个郁闷……

在cmd下,输入

sqlplus /nolog

嘿嘿,进来了吧,再输入

conn / as sysdba

呼,大功告成(汗,就输了几个字母)

 

3、在sql命令提示符下分别输入以下四条sql语句,查出所有以MGMT_、SMP_、EMD_、ECM_开始的同义词,并将其保存下来

在sql命令提示符下执行
select \'drop public synonym \'|| synonym_name || \';\' from all_synonyms where synonym_name like \'MGMT_%\';
select \'drop public synonym \'|| synonym_name || \';\' from all_synonyms where synonym_name like \'SMP_%\';
select \'drop public synonym \'|| synonym_name || \';\' from all_synonyms where synonym_name like \'EMD_%\';
select \'drop public synonym \'|| synonym_name || \';\' from all_synonyms where synonym_name like \'ECM_%\';

好人做到底吧,因为sql出来太多,cmd窗口放不下?点左上角的图标,选默认值,可以出来修改的配置(主要修改缓冲区的高),不过这里需要重新打开cmd窗口。

现在才说,哈哈,故意的,重新打开cmd窗口,再输入一次命令吧,多写几次下次才记得。

 

4、删除有关的数据和配置(N条drop命令)

在sql命令提示符下执行
drop user sysman cascade;
drop role MGMT_USER;
drop user MGMT_VIEW cascade;
drop user MGMT_AVAILABILITY cascade;
……N条drop public synonym命令,上一步查出来的所有sql,打开一个记事本,把全部sql复制上去,直接粘贴到窗口里就可以了。

 

5、最后一步了,听天由命吧,估计,也许,嗯,应该是可以的。(不行的话,看看日志,再处理一下)

这里有个前提,就是监听器配置必须配置好能访问你的数据库(如在plsql中能访问数据库),在命令里也会有相应提示,11g下还会提示你输入监听程序,但可以直接回车不输入。
在doc命令提示符下
emca -config dbcontrol db -repos create

emca -repos create
emca -config dbcontrol db

上帝保佑你,成功吧。

最好再好人一次,把里面的sql打个包上来吧。

重建oracle11g的em命令

看了要回复,要不就没心思写了~

以上是关于重建oracle的em的主要内容,如果未能解决你的问题,请参考以下文章

在Oracle数据库中按用户名重建索引的方法

oracle 控制文件的重建

oracle重建失效索引

ORACLE关于索引是否需要定期重建争论的整理

Oracle 重建表(rename)注意事项总结

Oracle 索引的失效和重建