oracle EM 治理以及诊断 总结__(转载)

oracle EM 治理以及诊断 总结


10g推出的web版oem确实不错 简单 美观 使用 但是大多数的dba可能很少使用oem
所以一定oem出现问题了 绝大多数的人采取的方式就是---重建oem 关于oem的诊断
网上这类文章不多 那我就来个简单的总结吧 ? 抛砖引玉吧 写的不好 请拍砖



一、了解OEM的文件结构--log位置
$ORACLE_HOME/hostname_sid/sysman/log --单实例
$ORACLE_HOME/nodename_sid/sysman/log --rac

$ORACLE_HOME/hostname_sid/sysman/log/emdb.nohup --一些java进程的启动或退出信息(比如dbconsole,agent)
$ORACLE_HOME/hostname_sid/sysman/log/emagent.log,emagent.trc --aggent的trace信息
$ORACLE_HOME/hostname_sid/sysman/log/emoms.log,emoms.trc --management service trace信息
$ORACLE_HOME/hostname_sid/sysman/log/emdctl.trc,emdctl.log --emctl的trace信息
$ORACLE_HOME/hostname_sid/sysman/log/emagentfetchlet.trc,emagentfetlet.log --java fetchlets的trace信息


二、诊断OEM启动


1. 环境变量

--ORACLE_HOME ,PATH,LD_LIBRARY_PATH,LANG
如下错误:OC4J Configuration Issue: $ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole_host_sid not found
通常来说是由于环境变量ORACLE_HOME设置错误或主机名设置错误


2. sysman/dbsnmp用户异常

--SELECT username,account_status from dba_users where username
in ('SYSMAN','DBSNMP');


备注:
--删除DBSNMP
@?/rdbms/admin/catnsnmp.sql
--重建DBSNMP
@?/rdbms/admin/catsnmp.sql



3. timezone 时区问题

--ORACLE_HOME/sysman/admin/supportedtzs.lst 检查该文件时区信息是否和当前环境变量timezone设置一致?

WINDOWS: 控制面板--日期和时间---时区 进行设置
UNIX、linux: export TZ=xxxx

手动配置时区
[color=red] emctl config agent getTZ
emctl config agent updateTZ --会更新 ORACLE_HOME/hostname_sid/sysman/config/emd.properties文件
[/color]

4. network 网络问题

--是否是静态IP(不推荐使用DHCP动态IP,其实也是可以的,不过需要进行特殊配置)
--hosts文件 主机名不能包好 下划线 _
--nslookup
--hosts文件格式
如下:
<ip> <full qualified domain name> <alias>

5. configuration 配置错误(比如端口,错误的连接字符串,通常来说跟hosts等有很大关系)

--lsnrctl status 查看监听log
--tnsping 通常来说相关的错误有ORA-12514 12560等等

--检查OEM配置文件
$ORACLE_HOME/hostname_sid/sysman/emd.proerties
$ORACLE_HOME/hostname_sid/sysman/emoms.properties


详细的信息大家可以参考: Troubleshooting Database Control Startup Issues [ID 549079.1]


三、如果手工重建OEM ?

1. 删除 db control configuration
10.1.x $ORACLE_HOME/bin/emca -x <sid>
10.2.x $ORACLE_HOME/bin/emca -deconfig dbconsole db

2. 删除db control 配置文件

手动删除如下目录:
ORACLE_HOME/hostname_sid
ORACLE_HOME/oc4j/j2ee/_OC4J_DBConsole_hostname_sid

如果是升级后的版本如下:
ORACLE_HOME/hostname_sid.upgrade
ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole_hostname_sid.upgrade


注意:如果是windows环境,那么还需要删除db console services
步骤如下:
方法1:注册表删除
--运行 regedit
--HKEY_LOCAL_MANCHINE/SYSTEM/CurrentControlSet/Services
--删除 OracleDBConsole<sid>

方法2:命令行

nmesrvops delete <servicename>

3. 删除db control repository

10.1/10.2 :
-- cd $ORACLE_HOME/sysman/admin/emdrep/bin
-- ./RepManger <hostname> <listener_port> <sid> -action drop 相关信息可以参考375946.1


4. 删除 db control repository 对象

-- exec DBMS_AQADM.DROP_QUEUE_TABLE(queue_table=>'SYSMAN.MGMT_NOTIFY_QTABLE',force=>TRUE);
-- SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP RESTRICT;
SQL> EXEC sysman.emd_maintenance.remove_em_dbms_jobs;
SQL> EXEC sysman.setEMUserContext('',5);
SQL> REVOKE dba FROM sysman;
SQL> DECLARECURSOR
c1 ISSELECT owner, synonym_name nameFROM dba_synonyms
WHERE table_owner = 'SYSMAN';
BEGINFOR r1 IN c1
LOOPIF r1.owner = 'PUBLIC' THENEXECUTE IMMEDIATE
'DROP PUBLIC SYNONYM '||r1.name;ELSEEXECUTE IMMEDIATE 'DROP SYNONYM '||r1.owner||'.'||r1.name;
END IF;END LOOP;
END;
/

SQL> DROP USER mgmt_view CASCADE;
SQL> DROP ROLE mgmt_user;
SQL> DROP USER sysman CASCADE;
SQL> ALTER SYSTEM DISABLE RESTRICTED SESSION;

通过下面的几个步骤可以更加彻底的删除:
SQL> drop user sysman cascade;
SQL> drop role MGMT_USER;
SQL> drop user MGMT_VIEW cascade;
SQL> drop public synonym MGMT_TARGET_BLACKOUTS;
SQL> drop public synonym SETEMVIEWUSERCONTEXT;




5. Delete DB Control Configuration Files and Repository Objects using EMCA

10.1 :
-- <ORACLE_HOME/bin/emca -x sid
---<ORACLE_HOME/sysman/admin/emdrep/bin/RepManager <hostname> <listener_port> <sid> -action drop

10.2:

--<ORACLE_HOME/bin/emca -dbconfig dbcontrol db -repos drop



6. 创建db control

1)创建db control配置文件
10.1 ---<ORACLE_HOME>/bin/emca -r
10.2 --<ORACLE_HOME>/bin/emca -config dbcontrol db

2)创建db control repostory
10.1 --<ORACLE_HOME>/bin/emca
10.2 --<ORACLE_HOME>bin/emca -config dbcontrol db -repos create/recreate

备注:rac环境需要添加cluter参数 如下:

emca -config dbcontrol db -repos create -cluster
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未来AI编程

共鸣===鼓励 打赏您随意

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值