成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

pt-archiver如何實(shí)現(xiàn)MySQL定期分表

這篇文章給大家分享的是有關(guān)pt-archiver如何實(shí)現(xiàn)MySQL定期分表的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

成都創(chuàng)新互聯(lián)公司致力于互聯(lián)網(wǎng)網(wǎng)站建設(shè)與網(wǎng)站營銷,提供做網(wǎng)站、成都網(wǎng)站制作、網(wǎng)站開發(fā)、seo優(yōu)化、網(wǎng)站排名、互聯(lián)網(wǎng)營銷、微信平臺(tái)小程序開發(fā)、公眾號(hào)商城、等建站開發(fā),成都創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)策劃專家,為不同類型的客戶提供良好的互聯(lián)網(wǎng)應(yīng)用定制解決方案,幫助客戶在新的全球化互聯(lián)網(wǎng)環(huán)境中保持優(yōu)勢(shì)。

pt-archiver使用的場景

1、清理線上過期數(shù)據(jù)  

2、清理過期數(shù)據(jù),并把數(shù)據(jù)歸檔到本地歸檔表中,或者遠(yuǎn)端歸檔服務(wù)器  

3、兩張表之間的數(shù)據(jù)不完全相同,希望合并。此時(shí)加上–ignore或–replace選項(xiàng),可以輕松實(shí)現(xiàn) 

4、導(dǎo)出線上數(shù)據(jù),到線下數(shù)據(jù)作處理 

導(dǎo)出數(shù)據(jù)的基本原理:  

     通過“過濾條件”,得在此范圍內(nèi)的PK的最大值和最小值 , 然后通過PK索引, 過濾條件 + pk <此范圍的最大值 + pk >(此范圍內(nèi)pk的最小值+每次增長limit指定的數(shù)) + limit. 這樣直到處理完成。 

關(guān)于分表,定期建表有一個(gè)pt-archiver可以很好的實(shí)現(xiàn).  
         db_source.py_out_export和db_source.py_out_export_result做定期清理,每周三0:00歸檔到歷史庫db_hist.py_out_export_his${TABLE_DATE}和db_hist.py_out_export_result_his${TABLE_DATE}表. 
    具體實(shí)現(xiàn)可參考 如下
/pydata/software/percona-toolkit-3.0.2/pt-archiver.sh 
/pydata/software/percona-toolkit-3.0.2/pt-archiver.def 
  
[root@py-test percona-toolkit-3.0.2]# more pt-archiver.sh 
#-------------------------------------------------------------------------------- 
#腳本名稱:  pt-archiver.sh 
#腳本參數(shù):  pt-archiver.def文件 
#腳本功能:  歸檔大表到歷史表 
#編 寫 人:  zj 
#編寫日期:  2017年6月19日14:20 
#更 新 人:   
#更新日期:   
#-------------------------------------------------------------------------------- 
  
EXEC_DATE=`date +%Y-%m-%d` 
TABLE_DATE=`date +%Y%m%d` 
#EXEC_DATE="2017-05-13" 
#TABLE_DATE="20170513" 
FILE_DIR=`dirname $0` 
FILE_NAME=`basename $0 .sh` 
USER="root" 
PASSWORD="dbpasswd" 
  
sed '/^#.*\|^$/d' ${FILE_DIR}/${FILE_NAME}.def >${FILE_DIR}/${FILE_NAME}.tmp 
for i in `cat ${FILE_DIR}/${FILE_NAME}.tmp` 
do       
DEF_DATA_TMP="`echo ${i} |sed s/\ //g`" #去空格,得到一行數(shù)據(jù) 
#得到數(shù)據(jù)文件和源表名值 
SOURCE_DB=`echo ${i} | cut -d "," -f1 | tr "[A-Z]" "[a-z]"` 
TABLE_NAME=`echo ${i} | cut -d "," -f2 | tr "[A-Z]" "[a-z]"` 
FLITER_FIELD=`echo ${i} | cut -d "," -f3 | tr "[A-Z]" "[a-z]"` 
DEST_DB=`echo ${i} | cut -d "," -f4 | tr "[A-Z]" "[a-z]"` 
  
HISTABLE_NAME="${TABLE_NAME}_his${TABLE_DATE}" 
WHERE_SQL=`echo "'exec_time<\""${EXEC_DATE}" 00:00:00\"'"` 
mysql -u${USER} -p${PASSWORD} -e "create table if not exists ${DEST_DB}.${HISTABLE_NAME} like ${SOURCE_DB}.${TABLE_NAME};" 
if [ $? -ne 0 ] ;then 
echo "ERROR:create table ${HISTABLE_NAME} error!" >${FILE_DIR}/${FILE_NAME}.log 
exit 1 
fi 
  
echo " pt-archiver  --source h=127.0.0.1,P=3306,u=${USER},p=${PASSWORD},D=${SOURCE_DB},t=${TABLE_NAME} --dest h=127.0.0.1,P=3306,u=${USER},p=${PASSWORD},D=${DEST_DB},t=${HISTABLE_NAME} --no-check-charset --where 
 '${FLITER_FIELD}<\""${EXEC_DATE}" 00:00:00\"' --progress 5000 --limit=1000 --txn-size=1000 --statistics">pt-archiver-${TABLE_NAME}.sh 
sh pt-archiver-${TABLE_NAME}.sh >pt-archiver-${TABLE_NAME}.log 
done 
exit 0 
  
[root@py-test percona-toolkit-3.0.2]#  more pt-archiver.def 
##源數(shù)據(jù)庫名,源表名,篩選字段,目標(biāo)庫名 
db_source,py_out_export,export_time,db_hist 
db_source,py_out_export_result,exec_time,db_hist 

##創(chuàng)建每周三定時(shí)執(zhí)行
[root@py-test percona-toolkit-3.0.2]#  crontab -e 
20 2 * * 3 /pydata/software/percona-toolkit-3.0.2/pt-archiver.sh >/pydata/software/percona-toolkit-3.0.2/pt-archiver.log

感謝各位的閱讀!關(guān)于“pt-archiver如何實(shí)現(xiàn)MySQL定期分表”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

標(biāo)題名稱:pt-archiver如何實(shí)現(xiàn)MySQL定期分表
瀏覽路徑:http://jinyejixie.com/article30/ggsopo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、服務(wù)器托管、移動(dòng)網(wǎng)站建設(shè)、軟件開發(fā)、ChatGPT、營銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
祁阳县| 灌南县| 高青县| 台东市| 永和县| 西城区| 叶城县| 新津县| 高青县| 富裕县| 阳东县| 浮山县| 祁阳县| 图木舒克市| 会宁县| 成武县| 社会| 涡阳县| 玉溪市| 和林格尔县| 黄陵县| 灵石县| 怀宁县| 龙泉市| 汉寿县| 资溪县| 崇义县| 金溪县| 宝应县| 津南区| 韩城市| 涪陵区| 海盐县| 门源| 旬阳县| 泸定县| 上高县| 玉屏| 保亭| 重庆市| 巢湖市|