ITPub博客

首页 > 数据库 > Oracle > Oracle Latch快照

Oracle Latch快照

原创 Oracle 作者:wzgchen 时间:2016-05-30 11:41:40 0 删除 编辑
创建Latch快照表
CREATE TABLE snap_latch as
SELECT 0 snap_id, sysdate snap_date, a.*
 FROM V$LATCH a;
 ALTER TABLE snap_latch add
   (constraint snap_filestat primary key (snap_id, name));

定期insert数据
INSERT INTO snap_latch
SELECT 1, sysdate, a.* FROM V$LATCH a;


查询Latch
SET LIN 120
SET PAGES 60
SET NUMFORMAT 999999.9   


SELECT SUBSTR(a.name,1,20) NAME, (a.gets-b.gets)/1000 "Gets(K)",
       (a.gets-b.gets)/(86400*(a.snap_date-b.snap_date)) "Get/s",
       DECODE ((a.gets-b.gets), 0, 0, (100*(a.misses-b.misses)/(a.gets-b.gets))) MISS,
       DECODE ((a.misses-b.misses), 0, 0,
              (100*(a.spin_gets-b.spin_gets)/(a.misses-b.misses))) SPIN,
      (a.immediate_gets-b.immediate_gets)/1000 "Iget(K)",
       (a.immediate_gets-b.immediate_gets)/ (86400*(a.snap_date-b.snap_date)) "IGet/s",
       DECODE ((a.immediate_gets-b.immediate_gets), 0, 0,
       (100*(a.immediate_misses-b.immediate_misses)/ (a.immediate_gets-b.immediate_gets))) IMISS
  FROM snap_latch a, snap_latch b
  WHERE a.name = b.name
 AND a.snap_id = b.snap_id + 1
   AND ( (a.misses-b.misses) > 0.001*(a.gets-b.gets)
       or (a.immediate_misses-b.immediate_misses) > 0.001*(a.immediate_gets-b.immediate_gets))
ORDER BY 2 DESC;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/91975/viewspace-2109153/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2015-05-01

  • 博文量
    383
  • 访问量
    213573