您好,登錄后才能下訂單哦!
這篇文章主要講解了“數據庫中怎么自動添加數據文件add_datafiles.sh”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“數據庫中怎么自動添加數據文件add_datafiles.sh”吧!
#!/bin/bash #by raysuen #v01 #load profile for env [ -f ~/.profile ]&& source ~/.profile [ -f ~/.bash_profile ]&& source ~/.bash_profile #function for add datafile AddDataFile(){ sqlplus -s /nolog<<-RAY conn / as sysdba $1 RAY } #specify check script ora_script=/home/oracle/script/ray/oracle_ray.sh while true do #obtain tablespace name which is over threshold value tablespace_name=`${ora_script} type=tablespace | egrep -v "TABLESPACE_NAME|selected|new mail|TEMP" |tr "%" " " | awk '{if($NF>85) print $1}'` if [ "${tablespace_name:-None}" == "None" ];then break else #loop tablespace name if tablespace is more then 2 for i in ${tablespace_name} do #obtain max datafile name max_datafile=`${ora_script} type=tsdf| grep "${i}" | sort -k 2 | tail -1 | awk '{print $2}'` #obtain max datafile number from max datafile max_num=`echo ${max_datafile} | awk -F\/ '{print $NF}' | sed -e "s/${i}//g" | sed -e "s/$(echo ${i} | tr [A-Z] [a-z])//g" | sed -e "s/[^0-9]//g"` #plus 1 on max_num replace_num=$[$max_num+1] #judge replace_num whether is less then 10,if it is true ,then before the replace_num join 0 if [ ${replace_num} -lt 10 ];then replace_num=`echo 0"${replace_num}"` fi #join the executable sql to add datafile sqltring=`echo "alter tablespace ${i} add datafile '"$(echo ${max_datafile} | sed "s/${max_num}\./${replace_num}\./g")"' size 128M autoextend on next 128M maxsize unlimited;"` #echo $sqltring AddDataFile "${sqltring}" done fi done
感謝各位的閱讀,以上就是“數據庫中怎么自動添加數據文件add_datafiles.sh”的內容了,經過本文的學習后,相信大家對數據庫中怎么自動添加數據文件add_datafiles.sh這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。