原文传送门:http://www.itpub.net/viewthread.php?tid=1099090
向jidongzheng 致敬
oracle 10g 配置 snmp 监控
使用snmp 监控 Oracle 10g(10.2.0.4) 时oracle 10g snmp的配置
Ø 目的:
使用标准的snmp协议,采集oracle 10g database的性能指标值。
Ø 安装说明:
在oracle 9i(含)之前,在数据库安装完成后,在ORACLE_HOME/network/snmp/。就有现成的脚本。按照oracle的文档,start_peer –a 后,再加上agentctl start后,就可以了。
本文说明的是在oracle 10g 上,如何启动oracle对snmp的支持。为什么这样讲呢,是因为当安装好oracle10g后,会发现,按照oracle的文档,以下两个目录都找不到,整个安装过程也就无法继续了。
ORACLE_HOME/network/snmp
ORACLE_HOME/sysman/snmp
为什么会出现这种问题呢,主要是由于oracle 10g开始,oracle提出了一个enterprise management Grid control server 的概念及产品。通过这个产品,可以方便的管理大量的oralce产品,当然,也包括数据库,大大的提高了管理的效率。
Ø 安装步骤
1. 下载enterprise management agent
按照oracle的grid的管理策略,如果要启动snmp,需要在被管理的机器上安装enterprise management agent.
下载地址:
http://www.oracle.com/technology/software/products/oem/htdocs/agentsoft.html
按照agent安装的机器OS版本选择。
2. 安装enterprise management agent
安装步骤1下载的文件。在这个安装过程中,如果当没有安装enterprise management Grid control serve时,在指定enterprise management Grid control serve时,可以随意指定一个IP地址。
需要说明的:enterprise management agent的安装目录尽量区别于oracle database的目录,如:agent10。
3. 修改target.xml
修改agent10g/sysman/emd/target.xml
修改前:
<Targets AGENT_TOKEN="39a54772920b8e80768cd5e10393d113e6a26dab">
<Target TYPE="oracle_emd" NAME="t5198:3872"/>
<Target TYPE="host" NAME="t5198"/>
<Target TYPE="oracle_database" NAME="vasomcdb">
<Property NAME="OracleHome" VALUE="/export/home/oracle/product/database"/>
<Property NAME="UserName" VALUE="584147f140be6a4b" ENCRYPTED="TRUE"/>
<Property NAME="MachineName" VALUE="t5198"/>
<Property NAME="Port" VALUE="1521"/>
<Property NAME="SID" VALUE="vasomcdb"/>
<Property NAME="ServiceName" VALUE="vasomcdb"/>
</Target>
</Targets>
修改后。目的:取消加密。
Targets AGENT_TOKEN="39a54772920b8e80768cd5e10393d113e6a26dab">
<Target TYPE="oracle_emd" NAME="t5198:3872"/>
<Target TYPE="host" NAME="t5198"/>
<Target TYPE="oracle_database" NAME="vasomcdb" PARENT_AGENT_HOME="|:|/export/home/oracle/product/database/t5198_vasomcdb" PARENT_ORACLE_HOME="|:|/export/home/oracle/product/database" PARENT_AGENT_HOME_ID="|:|1228976423813">
<Property NAME="MachineName" VALUE="t5198"/>
<Property NAME="Port" VALUE="1521"/>
<Property NAME="SID" VALUE="vasomcdb"/>
<Property NAME="OracleHome" VALUE="/export/home/oracle/product/database"/>
<Property NAME="UserName" VALUE="584147f140be6a4b" ENCRYPTED="TRUE"/>
<Property NAME="password" VALUE="df27e5e70f9f2a21" ENCRYPTED="TRUE"/>
<Property NAME="ServiceName" VALUE="vasomcdb"/>
</Target>
<Target TYPE="oracle_listener" NAME="LISTENER_t5198" PARENT_AGENT_HOME="/export/home/oracle/product/database/t5198_vasomcdb" PARENT_ORACLE_HOME="/export/home/oracle/product/database" PARENT_AGENT_HOME_ID="1228976423813">
<Property NAME="Machine" VALUE="t5198"/>
<Property NAME="LsnrName" VALUE="LISTENER"/>
<Property NAME="Port" VALUE="1521"/>
<Property NAME="OracleHome" VALUE="/export/home/oracle/product/database"/>
<Property NAME="ListenerOraDir" VALUE="/export/home/oracle/product/database/network/admin"/>
</Target>
</Targets>
4. 解除所管理数据库的dbsnmp 帐号的锁定。
5. 启动所管理的数据库及监听
6. 启动agent.即:agent10/bin/emctl start agent
7. 启动snmp的master 及其agent.
当然,在启动前,要关闭所有的snmp的程序及检查相关的端口是否被占用。
Agent10/network/snmp/peer/start_peer –a
8. 启动subagent
Agent10/bin/emctl start subagent
9. 配置过程完成。可以通过snmp的客户端,要连接是否能采集到数据库的snmp的mib值。