技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> Oracle --> Tips: PL/SQL中监控执行进度两种方法

Tips: PL/SQL中监控执行进度两种方法

浏览:2964次  出处信息

    这是我常用的两种PL/SQL监控运行状况的方法:

    1. 使用dbms_application_info.SET_CLIENT_INFO

    举例如下:

以下是代码片段:
    declare
     cursor cr is select rowid from test;
     delete_count number;
     total_count number;
    begin
     delete_count :=0;
     total_count :=0;
     for i in cr loop
     delete from test where rowid=i.rowid;
     delete_count :=delete_count+1;
     total_count :=total_count+1;
     if (delete_count>100) then
     dbms_application_info.SET_CLIENT_INFO(’ So far ‘||total_count||’ rows has been deleted’);
     delete_count :=0;
     commit;
     end if;
     end loop;
    end;
    /

    另开一session, select client_info from v$session where client_info like ‘So far%’;

    注意info的长度有限制,超过64字符会被截断

    2. 使用dbms_system.ksdwrt, 这个可以写到300个字符

    KSDWRT Procedure

    This procedure prints the message to the target file (alert log and/or trace file).

    Syntax

    DBMS_SYSTEM.KSDWRT (

     dest IN BINARY_INTEGER,

     tst IN VARCHAR2);

    Parameters:

    dest Destination is indicated by the following values:

    1 - Write to trace file.

    2 - Write to alertlog.

    3 - Write to both.

    tst Message (not tested for max length, but output with 300 chars was successful)

    举例如下:

以下是代码片段:
    declare
     cursor cr is select rowid from test;
     delete_count number;
     total_count number;
    begin
     delete_count :=0;
     total_count :=0;
     for i in cr loop
     delete from test where rowid=i.rowid;
     delete_count :=delete_count+1;
     total_count :=total_count+1;
     if (delete_count>100) then
     dbms_system.ksdwrt (1,’ So far ‘||total_count||’ rows has been deleted’);
     delete_count :=0;
     commit;
     end if;
     end loop;
    end;
    /

    然后开一session, tail -30f xxx.trc

建议继续学习:

  1. Mysql监控指南    (阅读:19505)
  2. 批量添加主机到cacti+nagios的监控报警系统中    (阅读:13086)
  3. 我常用的主机监控shell脚本    (阅读:11299)
  4. 7 天打造前端性能监控系统    (阅读:9833)
  5. 如何监控HP服务器硬件状态    (阅读:8913)
  6. Cacti 添加 Nginx 监控    (阅读:8716)
  7. Linux下三种常用的流量监控软件对比    (阅读:8492)
  8. Cacti 添加 Memcached 监控    (阅读:7942)
  9. Cacti 添加 Apache 监控    (阅读:7388)
  10. 你应该知道的16个Linux服务器监控命令    (阅读:6686)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
后一篇:安装BBED >>
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1