对自己的应用程序对数据库的操作,建立监控(For Oracle)——转载
2008-08-09 18:18
465 查看
原文地址:http://www.itpub.net/274842.html
数据库是oracle的话,那么可以利用oracle本身的10046事件跟踪SQL语句。步骤如下:
1、首先获得spid、sid、serial#,machine为你的机器名
SQL> select b.spid,a.sid,a.serial#,a.machine from v$session a,v$process b where a.paddr = b.addr and a.machine='yz';
SPID SID SERIAL# MACHINE
9497 49 3406 yz
2、利用10046事件开始跟踪
SQL>execute sys.dbms_system.set_ev(49, 3406,10046,1,'');
PL/SQL procedure successfully completed.
3、这时候你可以运行应用程序,对于web 应用你就可以打开你认为性能比较差页面。
4、如果你要查看这段时间执行了哪些sql语句,可以执行下面的语句结束跟踪
SQL>execute sys.dbms_system.set_ev(49,3406,10046,0,'');
PL/SQL procedure successfully completed.
5、SQL trace 工具会收集这个过程中执行的SQL的性能状态数据,记录到一个跟踪文件中.这个跟踪文件提供了许多有用的信息,例如解析次数.执行次数,CPU使用时间等。
6、这时候你可以通过下面的语句获得产生的跟踪文件所在的目录
SQL> select value from v$parameter where name = 'user_dump_dest';
VALUE
--------------------------------------------------------------------------------
/opt/oracle/admin/ocn/udump
7、在/opt/oracle/admin/ocn/udump下找到yzoracle_ora_9497.trc。9497是你当前应用的spid。
8、注意yzoracle_ora_9497.trc是不可读的,我们需要执行oracle的tkprof命令,将yzoracle_ora_9497.trc转化为我们可读的文本文件。
tkprof yzoracle_ora_9497.trc yzoracle_ora_9497.sql
这样你就可以在yzoracle_ora_9497.sql文件中看到所有的sql语句执行次数,CPU使用时间等数据.
数据库是oracle的话,那么可以利用oracle本身的10046事件跟踪SQL语句。步骤如下:
1、首先获得spid、sid、serial#,machine为你的机器名
SQL> select b.spid,a.sid,a.serial#,a.machine from v$session a,v$process b where a.paddr = b.addr and a.machine='yz';
SPID SID SERIAL# MACHINE
9497 49 3406 yz
2、利用10046事件开始跟踪
SQL>execute sys.dbms_system.set_ev(49, 3406,10046,1,'');
PL/SQL procedure successfully completed.
3、这时候你可以运行应用程序,对于web 应用你就可以打开你认为性能比较差页面。
4、如果你要查看这段时间执行了哪些sql语句,可以执行下面的语句结束跟踪
SQL>execute sys.dbms_system.set_ev(49,3406,10046,0,'');
PL/SQL procedure successfully completed.
5、SQL trace 工具会收集这个过程中执行的SQL的性能状态数据,记录到一个跟踪文件中.这个跟踪文件提供了许多有用的信息,例如解析次数.执行次数,CPU使用时间等。
6、这时候你可以通过下面的语句获得产生的跟踪文件所在的目录
SQL> select value from v$parameter where name = 'user_dump_dest';
VALUE
--------------------------------------------------------------------------------
/opt/oracle/admin/ocn/udump
7、在/opt/oracle/admin/ocn/udump下找到yzoracle_ora_9497.trc。9497是你当前应用的spid。
8、注意yzoracle_ora_9497.trc是不可读的,我们需要执行oracle的tkprof命令,将yzoracle_ora_9497.trc转化为我们可读的文本文件。
tkprof yzoracle_ora_9497.trc yzoracle_ora_9497.sql
这样你就可以在yzoracle_ora_9497.sql文件中看到所有的sql语句执行次数,CPU使用时间等数据.
相关文章推荐
- navicat for oracle注册机使用教程oracle客户端安装数据库操作
- 在 Oracle 数据库上使用 Visual Studio 2005 或 2008 构建 .NET 应用程序(官方文章转载)
- Linux下oracle11gR2系统安装到数据库建立配置及最后oracle的dmp文件导入一站式操作记录
- 【Oracle】Oracle操作数据库安装安装及常用名命令【转载】
- oracle database link的建立方法,两个数据库的操作
- Linux下oracle11gR2系统安装到数据库建立配置及最后oracle的dmp文件导入一站式操作记录
- 在oracle 10.2 for solaris上手工建立第2个数据库并访问的办法
- 使用Oracle的审计功能监控数据库中的可疑操作
- ZStack--建立自己的应用程序(API)转载
- (3)uniGUI for C++ builder手机应用开发之ORACLE数据库访问与操作
- Linux下oracle11gR2系统安装到数据库建立配置及最后oracle的dmp文件导入一站式操作记录(转)
- 使用Oracle的审计功能监控数据库中的可疑操作
- oracle 在日志中查询最近数据库操作 找回误删的数据
- 【经典】c#下各种数据库操作的封装!(支持ACCESS,SQLSERVER,DB2,ORACLE,MYSQL)
- c#下各种数据库操作的封装!(支持ACCESS,SQLSERVER,DB2,ORACLE,MYSQL)2
- ORACLE数据库系统做定期监控
- 在windows 7 下安装oracle 10g数据库(转载+亲身经历)
- [转载]Oracle的几个概念:数据库名,全局数据库名,SID,实例,命名空间,schema
- 监控和剖析数据库操作 -- P6Spy、SQL Profiler、IronTrack SQL(网络下载+我的修订)
- oracle 的自连接(self join)操作(转载的)