读书人

运用 DBMS_APPLICATION_INFO 进行实时

发布时间: 2012-07-26 12:01:08 作者: rapoo

使用 DBMS_APPLICATION_INFO 进行实时监控
dbms_application_info 包,用于交换环境中执行处理的时间点信息。
让一个长时间运行的PL/SQL程序提供处理信息。以下代码段每隔1000 行记录就更新应用程序的信息,内容主要是处理的记录数和花费的时间。

SQL> select count(*) from s_employee_test;   COUNT(*)----------    475136SQL> select username,sid,serial#,module,action from v$session where username='PLSQL'; USERNAME                              SID    SERIAL# MODULE                                           ACTION------------------------------ ---------- ---------- ------------------------------------------------ --------------------------------PLSQL                                   9        309 PL/SQL Developer                                 SQL Window - select username,sidPLSQL                                 132         64 PL/SQL Developer                                 Command Window - NewPLSQL                                 192        187 records Processed:74000                          Elapsed :20.37 secPLSQL                                 197        239 PL/SQL Developer                                 Main sessionSQL> select username,sid,serial#,module,action from v$session where username='PLSQL'; USERNAME                              SID    SERIAL# MODULE                                           ACTION------------------------------ ---------- ---------- ------------------------------------------------ --------------------------------PLSQL                                   9        309 PL/SQL Developer                                 SQL Window - select username,sidPLSQL                                 132         64 PL/SQL Developer                                 Command Window - NewPLSQL                                 192        187 records Processed:94000                          Elapsed :25.82 secPLSQL                                 197        239 PL/SQL Developer                                 Main session......SQL> select username,sid,serial#,module,action from v$session where username='PLSQL'; USERNAME                              SID    SERIAL# MODULE                                           ACTION------------------------------ ---------- ---------- ------------------------------------------------ --------------------------------PLSQL                                   9        309 PL/SQL Developer                                 SQL Window - select username,sidPLSQL                                 132         64 PL/SQL Developer                                 Command Window - NewPLSQL                                 192        187 records Processed:475136                         Elapsed :130.18 secPLSQL                                 197        239 PL/SQL Developer                                 Main session


最后一次查询的时间是在 PL/SQL 程序单元已经完成时。

以上演示了一种特定环境的有价值的技巧,并提供了实时监控的机制,这样能更容易地准确测量出程序已经运行的时间[/color],并可估算出程序还要多长时间才能完成[color=red]。

读书人网 >其他数据库

热点推荐