免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: mxin
打印 上一主题 下一主题

[新手入门] AIX shell工具集 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2006-06-23 19:25 |显示全部楼层
[原创]10. 保存清理errpt,(当然可以改为其他目录 )
#errclear.sh
errpt >/home/mxin/mon/log/errpt_`date +%Y%m%d`.log
errpt -a >>/home/mxin/mon/log/errpt_`date +%Y%m%d`.log
errclear 0

论坛徽章:
0
12 [报告]
发表于 2006-06-24 13:06 |显示全部楼层
[原创]11.起大量shell脚本
#start_procs.sh
cat start_procs.list|awk '{print "sh "$1".sh"}'|sh


#start_procs.list(可追加修改)
startprocessor
ProcProcessor
/home/scripts/startArocessor
p_mj_deal_cardevent

[ 本帖最后由 mxin 于 2006-6-24 13:07 编辑 ]

论坛徽章:
0
13 [报告]
发表于 2006-06-26 09:51 |显示全部楼层
[原创]12.停大量进程
# stop_procs.sh
cat procs.list|awk '{print "stop_proc.sh   "$1}'|sh

#stop_proc.sh
ps -ef|grep $1|grep -v grep|awk '{print "kill -9 "$2}'|sh

#stop_procs.list(可追加修改)
startprocessor
ProcProcessor
Jackrocessor
p_mj_deal_cardevent

论坛徽章:
0
14 [报告]
发表于 2006-06-29 16:13 |显示全部楼层
[原创]13.收集系统信息
echo --------------------------------------`hostname`-------------------------------------------
prtconf
echo -----------lsvg;lsvg `lsvg -o`
echo "-----------lsvg -l ";lsvg -l `lsvg -o`
echo "-----------lslv lv ";lsvg -l `lsvg -o`|grep -v "LV NAME"|grep -v awk '{print "lslv "$1}'|sh
echo -----------df;df -k;lsfs
echo -------------netstat;netstat -in;netstat -i;netstat -r
echo -------------------ps;ps -efk;ps gu
echo ------------------lscfg;lscfg -vp
echo --------------lssrc;lssrc -a
echo ------------lsslot;lsslot -c pci
echo -------------lspv;lspv
echo -------------lslpp;lslpp -l
echo -------------lsattr; lsdev -C|awk '{print "echo ---"$1";lsattr -El " $1}'|sh
echo -------------prtconf -v;prtconf -v
echo -------------errpt; errpt ;errpt -a
echo -------------major; ls -al /dev/*
echo -------------hosts file; cat /etc/hosts
if [ `ps -ef|grep cluster|grep -v grep|wc -l` -ge 1 ] ;then
echo -------------HA INFO
/usr/es/sbin/cluster/utilities/cltopinfo -c;/usr/es/sbin/cluster/utilities/cltopinfo -n;/usr/es/sbin/cluster/utilities/clshowres -n
`hostname`;/usr/es/sbin/cluster/utilities/cldisp
fi

[ 本帖最后由 mxin 于 2006-9-21 16:03 编辑 ]

论坛徽章:
0
15 [报告]
发表于 2006-06-30 08:32 |显示全部楼层
[原创]14.将多级子目录的权限放开
#chmod_dir.sh
echo for example::chmod_dir.sh rwx /home/mxin/mon
echo $1$2 >/tmp/chmod_dir.txt
cat /tmp/chmod_dir.txt|awk  -F / '{print "chmod  o+x /"$2";chmod o+x /"$2"/"$3";chmod o+x /"$2"/"$3"/"$4";chmod o+x /"$2"/"$3"/"$4"/"$5";chmod -R o+"$1" /"$2"/"$3"/"$4"/"$5"/"$6}'|sh

论坛徽章:
0
16 [报告]
发表于 2006-07-03 08:05 |显示全部楼层
[原创]15.监控oracle是否有锁。
#mon_db_lock.sh
. .profile
cd  /home/mxin/mon
if [ `date +%H%M` = "0800" ]; then
echo 0 > warn_count
fi
warn_count=`cat warn_count`
sqlplus "/as sysdba" <<EOF
set feed off;
set heading off;
spool /tmp/db_lock.out1;
@mon_db_lock.sql
spool off;
exit
EOF
sleep 13
sqlplus "/as sysdba" <<EOF
set feed off;
set heading off;
spool /tmp/db_lock.out2;
@mon_db_lock.sql
spool off;
exit
EOF
sleep 27
sqlplus "/as sysdba" <<EOF
set feed off;
set heading off;
spool /tmp/db_lock.out3;
@mon_db_lock.sql
spool off;
exit
EOF
cat  /tmp/db_lock.out1|grep -v SQL|grep [0-9] >/tmp/mon_db_lock.out1
cat  /tmp/db_lock.out2|grep -v SQL|grep [0-9] >/tmp/mon_db_lock.out2
cat  /tmp/db_lock.out3|grep -v SQL|grep [0-9] >/tmp/mon_db_lock.out3
cat /tmp/mon_db_lock.out1|grep -v SQL|grep [0-9]|awk '{print "grep \""$0"\" /tmp/mon_db_lock.out2"}'|sh >/tmp/db_lock1
if [ `cat /tmp/db_lock1|wc -l` -gt 0 ] ; then
  cat /tmp/mon_db_lock.out2|grep -v SQL|grep [0-9]|awk '{print "grep \""$0"\" /tmp/mon_db_lock.out3"}'|sh >/tmp/db_lock2
  if [ `cat /tmp/db_lock2|wc -l` -gt 0 ] ; then
    cat /tmp/mon_db_lock.out3|grep -v SQL|grep [0-9]|awk '{print "grep \""$0"\" /tmp/mon_db_lock.out.old"}'|sh >/tmp/db_lock3
    if [ `cat /tmp/db_lock3|wc -l` -gt 0 ] ; then
    cat /tmp/db_lock3|awk '{print "wall  db lock-------\" "$0 "\"!!" }'|sh
    let warn_count=$warn_count+1
    fi
  fi
fi
cp /tmp/mon_db_lock.out3   /tmp/mon_db_lock.out.old
if [ $warn_count -gt 4 ] ; then
  beep.sh
  echo 0 > warn_count
fi



#mon_db_lock.sql


set linesize 256
col object_name  format a18
col object_id    format 99999999
col Locked_Mode  format a15
col SERIAL#      format 9999999
col session_id   format 999999
col oracle_username format a15
col os_user_name format a15
col process format 9999999

SELECT substr(b.object_name,1,1 object_name,a.object_id,
decode( a.locked_mode,
0, 'None', /* Mon Lock equivalent */
1, 'Null', /* N */
2, 'Row-S (SS)', /* L */
3, 'Row-X (SX)', /* R */
4, 'Share', /* S */
5, 'S/Row-X (SSX)', /* C */
6, 'Exclusive',
a.locked_mode) Locked_Mode, /* X */
session_id, SERIAL#,oracle_username, os_user_name, a.process
FROM v$LOCKED_OBJECT a, dba_OBJECTS b,v$session c
WHERE a.object_id = b.object_id and a.session_id=c.sid
/

论坛徽章:
0
17 [报告]
发表于 2006-07-04 07:50 |显示全部楼层
[原创]16.监控oracle的表空间
# mon_ts_space.sh
cd  /home/oraprod
sqlplus "/as sysdba" <<EOF
set feed off;
set heading off;
spool /tmp/mon_ts_space.out;
@mon_ts_space.sql
exit
EOF
cat  /tmp/mon_ts_space.out|grep -v SQL|grep [0-9]|awk -f mon_ts_space.awk


# mon_ts_space.sql
select
   df.tablespace_name                          "Tablespace",
   (df.totalspace - fs.freespace)              "Used MB",
   fs.freespace                                "Free MB",
   df.totalspace                               "Total MB",
   round(100 * (fs.freespace / df.totalspace)) "Pct. Free"
from
   dba_tablespaces                               ts,
   (select tablespace_name,
        round(sum(bytes) / 1048576) TotalSpace
      from dba_data_files
      group by tablespace_name)                  df,
   (select tablespace_name,
        round(sum(bytes) / 1048576) FreeSpace
      from dba_free_space
      group by tablespace_name)                 fs
where
   ts.tablespace_name = fs.tablespace_name
and
   df.tablespace_name = fs.tablespace_name(+)
and
round(100 * (fs.freespace / df.totalspace)) <20
and df.tablespace_name not in ('APPS_UNDOTS1','TEMP');

[ 本帖最后由 mxin 于 2006-7-5 08:23 编辑 ]

论坛徽章:
0
18 [报告]
发表于 2006-07-05 08:24 |显示全部楼层
[原创]17.只清除所有当前使用该vg的用户
#kill_vg_user.sh
if [ $# -le 0  ]  ;then
echo "no para, example:kill_vg_user.sh erpapp_vg "
exit
fi
df -k|awk '{print $7 }'|grep -v Mounted >/tmp/fs_mounted.txt
for i in `lsvg -l $1 |grep -vE "N/A|vg|MOUNT"|awk '{print $7}'`
do
if [ `grep -c $i /tmp/fs_mounted.txt`  -ge 1 ] ; then
  echo fuser -kc $i
   fuser -kc $i
fi
done

[ 本帖最后由 mxin 于 2006-7-5 09:01 编辑 ]

论坛徽章:
0
19 [报告]
发表于 2006-07-07 09:14 |显示全部楼层
[原创]18.每月月底执行的脚本
#month_lastday.sh
. .profile
TZ=TZ-24
echo `date +%d`
if [ `date +%d` = "01" ]; then
echo "ok. today is last day of this month. run it!"
#insert your shell scripts
fi
[原创]19.每月1日执行的脚本
#month_firstdy.sh
. .profile
TZ=TZ+24
echo `date +%d`
if [ `date +%d` = "02" ]; then
echo "ok. today is firstday of  this month. run it!"
#insert your shell scripts
fi

[ 本帖最后由 mxin 于 2006-7-7 10:33 编辑 ]

论坛徽章:
0
20 [报告]
发表于 2006-07-26 13:28 |显示全部楼层
[原创]19.跟踪oracle export结果的脚本(放在exp脚本最后)
#exp_check.sh
if [ `tail /tmp/exp_dvlp.log|grep " success"|wc -l` -lt 1 ];then
  echo   "db dvlp export fail!!!"  #报警
  wall    "db dvlp export fail!!!"
fi
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP