通过shell脚本监控oracle session

最近数据库碰到了连接紧张的问题,想通过一个脚本对数据库的session情况一目了然。 以下是自己写的脚本。实现的效果如下。 对session的总体情况,那些program主要在占用,每个用户所拥有的session(active,inactive,killed,sniped...)都能够一目了然。

STATUS          CNT
-------- ----------
KILLED          553
SNIPED         2028
ACTIVE           44
INACTIVE       6097
         ----------
sum              8722
.

PROGRAM                                    CNT STATUS
----------------------------------- ---------- --------
JDBC Thin Client                                  2316 INACTIVE
program1@machine01 (TNS V1-V3)         659 INACTIVE
program2@machine02 (TNS V1-V3)         572 INACTIVE
program4@machine01 (TNS V1-V3)         462 SNIPED
program3@machine01 (TNS V1-V3)         449 INACTIVE
program4@machine02 (TNS V1-V3)         391 INACTIVE
program1@machine01 (TNS V1-V3)         349 SNIPED
JDBC Thin Client                                   342 SNIPED
program2@machine01 (TNS V1-V3)           268 INACTIVE
                                    ----------
sum                                                       5808
.


USERNAME             TOTAL_CNT     ACTIVE   INACTIVE     KILLED     SNIPED program1 program2 program3
--------------- ---------- ---------- ---------- ---------- ---------- ---------------- -------------- -----------
TESTUSER46               428          0            174        253          1              114            181          32
TESTUSER5                424          0            309          0        115              137            188          35
TESTUSER2                422          0              8        300        114              143            172          35
TESTUSER29               414          1            226          0        187              165            102          47
TESTUSER6                399          0            268          0        131               82            196          35
TESTUSER9                394          0            281          0        113              131            162          35
TESTUSER7                358          0            232          0        126               67            192          36
TESTUSER23               345          0            212          0        133               52            178          35
TESTUSER21               338          0            229          0        109               79            161          35
TESTUSER25               330          0            216          0        114               66            156          34
TSTAPP1                    313          0            195          0        118               31            182           3
TESTUSER30               299          0            298          0          1              110             92          32
TESTUSER22               297          0            286          0         11              106            112          32
TSTAPP12                   287          0            164          0        123               66            126          35
TESTUSER31               287          0            286          0          1              107            104          32
TESTUSER42               265          0            262          0          3               68            125          32
TESTUSER11               254          0            250          0          4               52            105          32
TESTUSER52               247          0            158          0         89                4            170          33
TSTAPP16                   241          0            232          0          9               54            110          32
TSTAPP8                    220          0            220          0          0               47            102          32
TSTAPP2                    220          0            215          0          5               74             93          32
TESTUSER32               149          0            149          0          0                2             76          32
TESTUSER51               134          0             18          0        116               30             77           1
TESTUSER3                104          0             17          0         87               34             50           3
TESTUSER45                95          0              0          0         95               12             65           0
TESTUSER44                69          0             21          0         48               22             31           3



--附上脚本内容:

sqlplus -s $DB_CONN_STR@$SH_DB_SID <<EOF
set feed off
set verify off
set line 132
set pages 200


col username format a15
col sql_id format a20
col sql_address format a20
col machine format a30
col osuser format a15
col logon_time format a10
col program format a35
break on report
compute sum of  cnt  on report
select status,count(*) cnt from v\$session group by status;
prompt .


select program,cnt,status from (select program,count(*) cnt,status from v\$session group by program,status order by cnt desc) where rownum<10;


prompt .
  select username,
      sum(cnt) total_cnt,
      sum(decode(status,'ACTIVE', cnt,0)) ACTIVE,
      sum(decode(status,'INACTIVE', cnt,0)) INACTIVE,
      sum(decode(status,'KILLED', cnt,0)) KILLED,
      sum(decode(status,'SNIPED', cnt,0)) SNIPED,
     $issue_program1 "JDBC Thin Client",
     $issue_program2  "program1",
     $issue_program3  "program2"
     from (select program,username,status,count(*) cnt from V\$SESSION   group by program,username,status  ) 
    group by username having sum(cnt)>50 order by total_cnt desc;


EOF
exit

原文发布于微信公众号 - 杨建荣的学习笔记(jianrong-notes)

原文发表时间:2014-03-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏云市场·精选汇

想做个网站,却说要“备案”,那什么是“备案”呢?

做网站,在使用国内服务器的时候,就需要去国家工信部门做“备案”了;国外服务器,不论是美国、香港还是台湾的服务器,是不需要备案了。

6783
来自专栏点滴科技资讯

盘点全球30家顶尖金融科技创新实验室

1652
来自专栏SAP最佳业务实践

SAP最佳业务实践:SD–销售订单处理:自库存销售(109)-4发票

VF04出具发票 在此活动中,处理开票。 角色销售开票员 后勤 ® 销售和分销 ® 开票 ® 开票凭证 ® 处理到期单据清单 1. 输入相关搜索标准,选择 与交...

4303
来自专栏SAP最佳业务实践

SAP最佳业务实践:FI–现金管理(160)-10银行对账-客户收款-FF67转账

4.4 银行对账单-客户收款-银行转账 SAP客户收款业务处理: 1、FF67收到银行对账单:收款凭证 借:银行存款 贷:银行结算(中间科目) 2、进一步...

3816
来自专栏云上大文件传输

AWS海外数据中心到腾讯云广州-文件传输对比评测集合

ftp客户端--FileZilla ftp服务端--FileZilla Server 软件下载地址:https://filezilla-project.org/...

56611
来自专栏编程

iOS开发进阶篇——FRP与ReactiveCocoa的介绍(一)

*****阅读完此文,大概需要30分钟***** 一、FRP的概念 RAC(ReactiveCocoa)是由GitHub团队开发的基于Cocoa的FRP框架。提...

2580
来自专栏企鹅号快讯

iOS开发进阶篇——FRP与ReactiveCocoa的介绍(一)

*****阅读完此文,大约需要30分钟***** 一、FRP的概念 RAC(ReactiveCocoa)是由GitHub团队开发的基于Cocoa的FRP框架。提...

1878
来自专栏技术支持log

利用Nali-ipip在线工具查看域名解析/IP位置/MTR追踪路由

nali,名字取自中文“哪里”的拼音。nali包含一组命令行程序,其主要功能就是把一些网络工具的输出的IP字符串,附加上地理位置信息(这里我们来使用ipip.n...

3821
来自专栏安恒信息

紧急预警 | Petya勒索病毒最新变种来袭

北京时间6月28日凌晨,又一波大规模勒索蠕虫病毒攻击席卷全球,多国政府、银行、电力系统、通讯系统、企业以及机场都不同程度的受到了影响。据莫斯科的网络安全公司Gr...

2447
来自专栏域名资讯

九爱科技创意域名获2.1亿融资

中国互联网医疗领军企业微医以及数家浙商民营资本A轮融资2.1亿元九爱科技。

490

扫码关注云+社区

领取腾讯云代金券