Oracle shell监控小脚本
##CPU Monitor
h=`hostname`
cpu_used=`top -b -d 1 -n 2 | grep Cpu | awk 'NR>1'`
sys_cpu_used=`echo $cpu_used|awk '{print $4}'`
io_cpu_used=`echo $cpu_used|awk '{print $10}'`
idle_cpu=`echo $cpu_used|awk '{print $8}'`
c=$(echo "$user_cpu_used >$b"|bc)
if [ $c -eq 1 ]
then
# echo "Please check SQL!"
echo "CPU Used $user_cpu_used% Over 25%,Please Check,$h!"
else
echo "OK"
fi
#Oracle listener check
h=`hostname`
v_l=`ps -ef|grep ora|grep LISTENER|grep -v grep|awk '{print $2}'`
if [ ! -n $v_l ]; then
#echo "IS Wrong!"
echo "Oracle LISTENER is Down,Please Check,$h!"
else
#echo "Listener Status IS OK!"
echo "OK"
fi
#Oracle status check
v_s=`ps -ef|grep ora|grep ora_smon|grep -v grep|awk '{print $2}'`
h=`hostname`
if [ ! -n $v_s ]; then
#echo "IS Wrong!"
echo "Oracle DB is Down,Please Check,$h!"
else
#echo "Oracle Status IS OK!"
echo "OK"
fi
source ~/.bash_profile
##Oracle session
h=`hostname`
k="set heading off feedback off pagesize 0 verify off echo off"
t="v\$session"
v_session=`sqlplus -s dbadmin/QazWsx12 << EOF
$k
SELECT count(1) FROM $t s where s.STATUS='ACTIVE' and s.TYPE='USER';
EOF`
#echo v_session
then
echo "Oracle Active session $v_session Over 15,Please Check,$h!"
else
echo "OK"
fi
source ~/.bash_profile
##Oracle tablesapce
h=`hostname`
k="set heading off feedback off pagesize 0 verify off echo off"
t="dba_users"
v_tab_used=`sqlplus -s dbadmin/QazWsx12 << EOF
$k
select * from (
select
case
when s.USED_PERCENT<95 then 'OK'
else 'Tablespace '||s.TABLESPACE_NAME||' Used '||round(s.USED_PERCENT,2)||'%,'||'Please Check!'
end status
from
dba_tablespace_usage_metrics s where s.TABLESPACE_NAME in ('PAYIDX','USERS','UNDOTBS1')) a where status !='OK';
EOF`
#echo v_tab_used
then
echo "$v_tab_used","$h"
else
echo "OK"
fi
source ~/.bash_profile
##Oracle session
h=`hostname`
k="set heading off feedback off pagesize 0 verify off echo off"
t="dba_users"
v_user_lock=`sqlplus -s dbadmin/QazWsx12 << EOF
$k
SELECT s.username,s.account_status FROM $t s where s.username in ('BOSS','ISMP','TEMP_DSF','PAY','ACCOUNT','SETTLE','TESTUSER') and s.account_status !='OPEN';
EOF`
#echo $v_user_lock
if [ -n "$v_user_lock" ]
then
echo "$v_user_lock ,Please Check,$h!"
else
echo "OK"
fi
Oracle shell监控小脚本的更多相关文章
- svn同步小脚本
企业中难免会有使用svn 的怎么给svn做好备份呢 下面是用两个脚本进行同步和监控 同步脚本: #!/bin/bash i=1 while true do if [ $(expr $i % 12) = ...
- Linux/Unix shell 监控Oracle监听器(monitor listener)
使用shell脚本实现对Oracle数据库的监控与管理将大大简化DBA的工作负担,如常见的对实例的监控,监听的监控,告警日志的监控,以及数据库的备份,AWR report的自动邮件等.本文给出Linu ...
- Linux/Unix shell 监控Oracle告警日志(monitor alter log file)
使用shell脚本实现对Oracle数据库的监控与管理将大大简化DBA的工作负担,如常见的对实例的监控,监听的监控,告警日志的监控,以及数据库的备份,AWR report的自动邮件等.本文给出Linu ...
- 第一个Mac shell 小脚本
大多数程序员都喜欢偷懒的,我也不例外.相信好多Android开发的coder 在网络http请求方面,会浪费很多时间在接口调试这里..有时候,自己写了一个小测试,行还好,不行的话,还要跟写后台的哥们一 ...
- [主机/oracle/msyql] 监控脚本
为了方便自己测试和监控,写了三个监控的脚本. 分别监控: 主机[cpu,mem,disk,fs,net] oracle mysql 脚本如下: hmon.py: monitor Linux os sy ...
- shell监控脚本
序言: 前几天一好友问我服务器监控怎么做?你们公司的监控是怎么做的?有什么开源的监控软件推荐?常见的开源的监控软件当然首先推荐ZABBIX,分布式够强大,而且很多公司都在用,我问他具体什么需求,能监控 ...
- Mac shell 小脚本开发(转)
大多数程序员都喜欢偷懒的,我也不例外.相信好多Android开发的coder 在网络http请求方面,会浪费很多时间在接口调试这里..有时候,自己写了一个小测试,行还好,不行的话,还要跟写后台的哥们一 ...
- shell讲解-小案例
shell讲解-小案例 一.文件拷贝输出检查 下面测试文件拷贝是否正常,如果cp命令并没有拷贝文件myfile到myfile.bak,则打印错误信息.注意错误信息中basename $0打印脚本名.如 ...
- Oracle 性能相关常用脚本(SQL)
在缺乏的可视化工具来监控数据库性能的情形下,常用的脚本就派上用场了,下面提供几个关于Oracle性能相关的脚本供大家参考.以下脚本均在Oracle 10g测试通过,Oracle 11g可能要做相应调整 ...
随机推荐
- Hibernate的入门Curd用法
今天分享的是hibernate关系映射框架的入门用法 一:Hibernate简介 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建 ...
- ASP.NET Core分布式项目-1.IdentityServer4登录中心
源码下载 一.添加服务端的api 1.添加NUGet包 IdentityServer4 点击下载,重新生成 2.添加Startup配置 打开Startup文件 public class Startup ...
- java类的访问修饰符
1.java中外部类的访问修饰符有如下四种: public,默认,abstract,final // public,默认,abstract,final. public class Test1 {} c ...
- 不遮挡人物弹幕是怎么实现的——图片蒙版效果-webkit-mask
这是一个实验中的功能,用于设置元素上遮罩层的图像. 一.Values none:默认值,透明的黑色图像层,也就是没有遮罩层. <mask-source>:<mask>或CSS图 ...
- sql语句开启事务
以下为示例代码: begin tran update 表 where 姓名='A' update 表 where 姓名='B' rollback else commit
- [LeetCode] 46. Int数组全排列 ☆☆☆(回溯)
描述 给定一个没有重复数字的序列,返回其所有可能的全排列. 示例: 输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2, ...
- linux设置密钥登录(只允许密钥登录)
一.root用户使用这条命令看看家目录有没有(.ssh文件夹),cd .ssh,如果存在就会进入这个文件夹,不存在就(makedir .ssh),修改.ssh这个文件夹权限(chmod 700 .ss ...
- node-exporter cpu使用率为负数
在prometheus利用公式:100 - (avg by (instance) (irate(node_cpu{instance="xxx", mode="idle&q ...
- 【2017-12-06】winfrom 窗体自启最大化,控件自适应
先将窗体windowstate属性设置为Maximized public partial class Form1 : Form { public Form1() { InitializeCompone ...
- <转载>c++中new一个二维数组
原文连接 在c++中定义一个二维数组时有多种方式,下面是几种定义方式的说明:其中dataType 表示数据类型,如int byte long... 1.dataType (*num)[n] = n ...