首页 > 数据库技术 > 详细

[Oracle工程师手记]如何找到 RMAN 的所有 session

时间:2021-04-08 14:54:58      阅读:17      评论:0      收藏:0      [点我收藏+]

有时候,为了监控了解 RMAN 的运行状况,我们需要所有的 RMAN 的 session 信息,如何找到这些 session 呢,可以利用 v$process 以及 v$session 中的一些如 client_info 、module_name、program 之类,来进行查找。

 

set linesize 300
col spid format 99999
col serial# format 99999
col spid format a10
col event format a20
col p1 format 999999999999
col p2 format 9999999
col p3 format 9999999
col blocker format 9999999
col client format a12

SELECT s.sid, s.serial#,spid, s.event, s.p1,s.p2,s.p3, s.blocking_session as blocker,client_info as client
 FROM v$process p, v$session s
 WHERE p.addr = s.paddr
 AND client_info LIKE ‘%rman%‘;

 
结果的例子:

      SID SERIAL# SPID       EVENT                           P1       P2       P3  BLOCKER CLIENT
---------- ------- ---------- -------------------- ------------- -------- -------- -------- ------------
       33    2807 16514      SQL*Net message from    1650815232        1        0          rman channel
                              client                                                       =ORA_DISK_1

 

结果里可能会有很多条记录,代表了执行 rman 的有复数个 session 。

上面的查询,我利用了 clinet_info,在不同版本的数据库中,rman session 的 v$process 、v$session 的信息也不完全一样。为了稳妥起见,也要查一下 program like ‘%rman%‘  、module_name like ‘%rman%‘ 之类的session。

[Oracle工程师手记]如何找到 RMAN 的所有 session

原文:https://www.cnblogs.com/gaojian/p/14631578.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!