使用shell脚本查看数据库负载情况(81天)
发布日期:2021-06-30 13:28:38 浏览次数:2 分类:技术文章

本文共 1100 字,大约阅读时间需要 3 分钟。

平时在查看数据库的问题时,会有种迷茫的感觉,如果没有任何人反馈问题,基本上没有主动查找问题的方向,awr,ash都是在得知问题发生的时间段或者一些时间戳来从历史记录中查找相关的信息,个人整理了如下的脚本,能够显示当天的时间段内数据库的负载信息,能够很好掌握数据库的忙闲情况。

来看一个简单的例子,比如我要查看早上6点到中午12点数据库的负载情况

脚本 showdbtime.sh 显示的是在制定的时间段内的 数据库负载的一个综合值。比如6点到7点个小时(60分钟),dbtime如果是120分钟,那么显示的负载就是200%

BEGIN_TIME END_TIME ELAPSED_TIME DBTIME WORKLOAD_PER

脚本内容如下:

sqlplus -s $DB_CONN_STR@$SH_DB_SID <<EOF

set linesize 200

EOF

在此基础上如果要查看每个小时的数据库负载情况,可以略做一些改进。

脚本showdbtimerpt.sh

sqlplus -s $DB_CONN_STR@$SH_DB_SID <<EOF

EOF

运行结果类似下面的样子。

BEGIN_TIME END_TIME ELAPSED_TIME DBTIME WORKLOAD_PER ----------------------------------- ----------------------------------- ------------- ---------- -------------------- 201 ** 21-MAY-14 06.07.33.893 PM 201 ** 21-MAY-14 07.07.33.893 PM 60 120 200%

201 ** 21-MAY-14 07.07.33.893 PM 201 ** 21-MAY-14 08.07.33.893 PM 60 150 250%

201 ** 21-MAY-14 08.07.33.893 PM 201 ** 21-MAY-14 09.07.33.893 PM 60 240 400%

201 ** 21-MAY-14 09.07.33.893 PM 201 ** 21-MAY-14 10.07.33.893 PM 60 60 100%

201 ** 21-MAY-14 10.07.33.893 PM 201 ** 21-MAY-14 11.07.33.893 PM 60 120 200%

可以生成每个时间段的负载报表,这样就一目了然了。可以有针对性的根据负载进行相关的性能抓取。

转载地址:https://jeanron100.blog.csdn.net/article/details/102506822 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:关于exp statistics的问题和简单测试(82天)
下一篇:分区索引学习笔记 (77天)

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月20日 02时55分53秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章