国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > 文庫(kù) > 正文

批量刪除binlog 的腳本

2024-09-07 22:12:34
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
          MySQL DBA 偶爾會(huì)遇到因?yàn)榭臻g不足,在不能刪除data之前,可能先想到的是通過(guò)刪除binlog 暫時(shí)解決空間問(wèn)題。周末本人也遇到這樣的情況,因?yàn)椴辉陔娔X旁邊,找領(lǐng)導(dǎo)出馬并且使用手機(jī)把命令打出發(fā)給老板去刪除binlog。想想還是寫(xiě)一個(gè)binlog 刪除工具吧,以后遇到此類(lèi)問(wèn)題,直接使用腳本工具合適。
 
delbinlog.sh
#!/bin/bash
##author yangyi@youzan.com
#date 20160327
#delnums 是每次刪除多少個(gè),分批次刪除。
#rest_num是要保留多少個(gè)binlog ,可以根據(jù)實(shí)際情況調(diào)整。
if [ $# -lt 4 ];then
   echo "Usage: $0  -p PORT -r res_nums"
   exit 1

fi
while getopts ":p:r:" arg
do
    case $arg in
        p)
          #echo "p's arg:$OPTARG"
          PORT=$OPTARG
          ;;
        r)
         #echo "d's arg:$OPTARG"
          res_nums=$OPTARG
          ;;
        ?)  #當(dāng)有不認(rèn)識(shí)的選項(xiàng)的時(shí)候arg為?
          echo "unkonw argument"
          echo "Usage: $0  -p PORT -r res_nums"
          exit 1
          ;;
    esac
done
if [ -S /srv/my_$PORT/mysqld.sock ]; then
   SOCKET="/srv/my_$PORT/mysqld.sock"
elif [ -S /srv/my$PORT/run/mysql.sock  ]; then
   SOCKET="/srv/my$PORT/run/mysql.sock"
fi
MYSQL="mysql -uroot -S ${SOCKET} "
del_nums=3
logs_num=`$MYSQL -e "show master logs;" | wc -l `
echo "there are $logs_num binary logs .."
if [[ $res_nums -gt $logs_num ]];
then
  exit 0
fi
while [[ $res_nums -lt $logs_num ]]; do
   del_to_binlog=`$MYSQL --skip-column-names -e "show master logs;"  | head -n $del_nums | awk 'END {print $1}'`
   $MYSQL -e "purge master logs to '$del_to_binlog' ;"
   echo "purge master logs to  $del_to_binlog ... "
   logs_num=`$MYSQL --skip-column-names -e "show master logs;" | wc -l `
   sleep 2
done
logs_num=`$MYSQL -e "show master logs;" | wc -l `
echo "there are $logs_num binary logs .."
 
有需要的可以根據(jù)自己生產(chǎn)環(huán)境的實(shí)際情況,適當(dāng)修改。
 

(編輯:武林網(wǎng))

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 曲阳县| 香港 | 裕民县| 英吉沙县| 安塞县| 栖霞市| 合阳县| 婺源县| 岗巴县| 福建省| 伊吾县| 宣汉县| 明光市| 全椒县| 南涧| 柳林县| 河池市| 萝北县| 高平市| 沧州市| 资兴市| 自治县| 镇沅| 全州县| 达日县| 遵化市| 大渡口区| 柳林县| 茌平县| 汨罗市| 通化市| 读书| 得荣县| 新津县| 灵寿县| 清水河县| 旬阳县| 淮南市| 贡山| 通化市| 广灵县|