將db2數據庫某用戶下的所有表進行數據統計分析

#!/bin/bash


####################################################################
#
# 將db2數據庫某用戶下的所有表進行數據統計分析
# 使用:修改tableSchema值和dbName值
#
####################################################################


tableSchema="DB2ECIF"
dbName="ecifdb"


db2 connect to $dbName > /dev/null


# 如果上一條命令執行後的結束代碼不是0則執行下面的命令
if [ $? -ne 0 ]
then

  echo "Failed to connect to database, please contact the administrator."

exit 1;

fi


db2 -x "SELECT TABNAME FROM SYSCAT.TABLES WHERE TABSCHEMA="$tableSchema" ORDER BY NPAGES DESC" >tables.list


for i in 0 1 2 3 4 5 6 7 8 9
do
  echo "db2 connect to "$dbName";" >runstats$i.sh
  chmod 755 runstats$i.sh
done


count=1
while read line
do
  last_digit=`echo $count | sed 's/\(.*\)\(.\)$/\2/'`
  echo "db2 runstats on table "$tableSchema".${line} on all columns with distribution and detailed indexes all;" >>runstats$last_digit.sh
  count=`expr $count + 1`
done < tab.list


for i in 0 1 2 3 4 5 6 7 8 9
do  
  nohup ./runstats$i.sh >runstats$i.log &
done
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章