Sybase空間監控指令碼 btmbfe_sybase_space_use.sh

fjzcau發表於2015-02-08
#!/bin/sh

DBName='master MBFEWKDB MBFEHISDB DIRWAYSDB DISWAYSDB'

logdir=/sybase/dumpdb
tbslog=btmbfe_tbs.log
tbslog2=btmbfe_tbs2.log
fslog=btmbfe_fs.log

wkd=`date +"%w%H"`  # 每週日中午12點收集空間大小    

cd $logdir

cat /dev/null > $tbslog

#-- 資料庫監控 --#
for db in $DBName
do
  i_spool=$logdir/$db.spool

su - sybase -c "isql -Usa -PBtsa1@ < $i_spool
use $db
go
sp_spaceused
go
!"
   
  if [ $wkd = "012" ]
  then
    echo "\n--------------------------------------------------------" >> $tbslog2
    nowtime=`date +"%Y%m%d %H:%M:%S"`
    echo "--&gt $nowtime " >> $tbslog2
    cat $db.spool >> $tbslog2
    echo "--------------------------------------------------------\n" >> $tbslog2
  fi
   
    i_total=`cat $i_spool | grep -E "[0-9]" | grep -v return | grep $db |  awk 'BEGIN{OFS=" "}{print $2 }' `
    i_total=`echo $i_total|cut -d "." -f1`
    i_total=`expr $i_total \* 1024 `
    i_use=`cat $i_spool | grep -E "[0-9]" | grep -v return | grep KB|  awk 'BEGIN{OFS=" "}{print $3 }' `
    #i_use=`expr $i_use / 1024 `
    i_percent=`expr $i_use \* 100 / $i_total `
   
    echo "$db:$i_total:$i_use:$i_percent%" >> $tbslog
   
    rm $i_spool

done

#--檔案系統監控 --#
dfspace | grep -v "Total Disk Space" | tr -s "[\n]" | \
awk 'BEGIN{FS=":";OFS=":"}{print $1,$3 }'          | \
sed 's/[\)]//' | sed 's/[\(]//'                   | \
awk 'BEGIN{OFS=":"}{print $1,$6,$6-$3,100-$9 }' | \
sed 's/$/%/' > $fslog

ftp -i -n 30.23.1.66 <
user test test123
lcd $logdir
bin
prom
put $tbslog
put $fslog
by
!

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22661144/viewspace-1430694/,如需轉載,請註明出處,否則將追究法律責任。

相關文章