pt-archiveråç解æ
ä½ä¸ºMySQL DBAï¼å¯ä»¥è¯´åºè¯¥æ²¡æä¸ç¥épt-archiveräºï¼ä½ä¸ºpt-toolkitå¥ä»¶ä¸çéè¦æåï¼å¾å¾è½å¤è½»æ¾å¸®å©DBA解å³æ°æ®å½æ¡£çé®é¢ãä¾å¦çº¿ä¸ä¸ä¸ªæµæ°´è¡¨ï¼ä¸å¡ä» ä» åªéè¦åæ¾æè¿3个æçæµæ°´æ°æ®ï¼ä¸ä¸ªæåçæ°æ®åå½æ¡£å³å¯ï¼é£ä¹pt-archiverå°±å¯ä»¥è½»æ¾å¸®ä½ å®æè¿ä»¶äºæ ï¼çè³ä½ å¯ä»¥é ç½®æèªå¨ä»»å¡ï¼æ é人工干é¢ã
ä½ä¸ºDBAï¼æ们åºè¯¥ç¥å ¶ç¶æ´åºè¯¥ç¥å ¶æ以ç¶ï¼è¿æ ·æ们ä¹è½å¤æ¾å¿å°ä½¿ç¨ptå·¥å ·ãç¸ä¿¡å¾å¤DBAé½ç 究è¿pt-online-schema-changeçåçï¼é£ä¹ä»å¤©æä»¬æ·±å ¥å¨ä¸å¨pt-archiverçå·¥ä½åçã
ä¸ãåçè§å¯
å人æååæ³ï¼æ们ç´æ¥å¼å¯general logæ¥è§å¯pt-archiveræ¯å¦ä½å®æå½æ¡£çã
å½ä»¤
pt-archiver --source h=127.0.0.1,u=xucl,p=xuclxucl,P=3306,D=xucl,t=t1 --dest h=127.0.0.1,P=3306,u=xucl,p=xuclxucl,D=xucl_archive,t=t1 --progress 5000 \--statistics --charset=utf8mb4 --limit=10000 --txn-size 1000 --sleep 30
常ç¨é项
--analyzeæå®å·¥å
·å®ææ°æ®å½æ¡£å对表æ§è¡'ANALYZE TABLE'æä½ãæå®æ¹æ³å¦'--analyze=ds'ï¼s代表æºç«¯è¡¨ï¼d代表ç®æ 端表ï¼ä¹å¯ä»¥åç¬æå®ã--ask-passå½ä»¤è¡æ示å¯ç è¾å
¥ï¼ä¿æ¤å¯ç å®å
¨ï¼åæéå®è£
模åperl-TermReadKeyã--bufferæå®ç¼å²åºæ°æ®å·æ°å°é项'--file'æå®çæ件并ä¸å¨æ交æ¶å·æ°ãåªæå½äºå¡æ交æ¶ç¦ç¨èªå¨å·æ°å°'--file'æå®çæ件åå·æ°æ件å°ç£çï¼è¿æå³çæ件æ¯è¢«æä½ç³»ç»åè¿è¡å·æ°ï¼å æ¤å¨äºå¡è¿è¡æ交ä¹åæä¸äºæ°æ®éå¼å·æ°å°ç£çãé»è®¤æ¯æ¯ä¸è¡æä½åè¿è¡æ件å·æ°å°ç£çã--bulk-deleteæå®å个è¯å¥å é¤chunkçæ¹å¼æ¥æ¹éå é¤è¡ï¼ä¼éå¼æ§è¡é项'--commit-each'ã使ç¨å个DELETEè¯å¥å é¤æ¯ä¸ªchunk对åºç表è¡ï¼é常çåæ³æ¯éè¿ä¸»é®è¿è¡éè¡çå é¤ï¼æ¹éå é¤å¨é度ä¸ä¼æå¾å¤§çæåï¼ä½å¦ææå¤æç'WHERE'æ¡ä»¶å°±å¯è½ä¼æ´æ
¢ã--[no]bulk-delete-limité»è®¤å¼ï¼yesæå®æ·»å é项'--bulk-delete'å'--limit'å°è¿è¡å½æ¡£çè¯å¥ä¸ã--bulk-insert使ç¨LOAD DATA LOCAL INFILEçæ¹æ³ï¼éè¿æ¹éæå
¥chunkçæ¹å¼æ¥æå
¥è¡(éå¼æå®é项'--bulk-delete'å'--commit-each')èä¸æ¯éè¿éè¡åç¬æå
¥çæ¹å¼è¿è¡ï¼å®æ¯åè¡æ§è¡INSERTè¯å¥æå
¥çé度è¦å¿«ãéè¿éå¼å建临æ¶è¡¨æ¥åå¨éè¦æ¹éæå
¥çè¡(chunk)ï¼èä¸æ¯ç´æ¥è¿è¡æ¹éæå
¥æä½ï¼å½ä¸´æ¶è¡¨ä¸å®ææ¯ä¸ªchunkä¹ååè¿è¡ç»ä¸æ°æ®å è½½ã为äºä¿è¯æ°æ®çå®å
¨æ§ï¼è¯¥é项ä¼å¼ºå¶ä½¿ç¨é项'--bulk-delete'ï¼è¿æ ·è½å¤ææä¿è¯å é¤æ¯å¨æå
¥å®å
¨æåä¹åè¿è¡çã--channelæå®å½ä¸»ä»å¤å¶ç¯å¢æ¯å¤æºå¤å¶æ¶éè¦è¿è¡å½æ¡£åªä¸ªä¸»åºçæ°æ®ï¼éç¨äºå¤æºå¤å¶ä¸å¤ä¸ªä¸»åºå¯¹åºä¸ä¸ªä»åºçæ
å½¢ã--charsetï¼-Aæå®è¿æ¥å符éã--[no]check-charseté»è®¤å¼ï¼yesæå®æ£æ¥ç¡®ä¿æ°æ®åºè¿æ¥æ¶å符éå表å符éç¸åã--[no]check-columnsé»è®¤å¼ï¼yesæå®æ£æ¥ç¡®ä¿é项'--source'æå®çæºç«¯è¡¨å'--dest'æå®çç®æ 表å
·æç¸åçå段ãä¸æ£æ¥å段å¨è¡¨çæåºåå段类åï¼åªæ£æ¥å段æ¯å¦å¨æºç«¯è¡¨åç®æ 表å½ä¸é½åå¨ï¼å¦ææä¸ç¸åçå段差å¼ï¼åå·¥å
·æ¥ééåºãå¦æéè¦ç¦ç¨è¯¥æ£æ¥ï¼åæå®'--no-check-columns'ã--check-slave-lagæå®ä¸»ä»å¤å¶å»¶è¿å¤§äºé项'--max-lag'æå®çå¼ä¹åæåå½æ¡£æä½ãé»è®¤æ
åµä¸ï¼å·¥å
·ä¼æ£æ¥ææçä»åºï¼ä½è¯¥é项åªä½ç¨äºæå®çä»åº(éè¿DSNè¿æ¥æ¹å¼)ã--check-intervalé»è®¤å¼ï¼1så¦æåæ¶æå®äºé项'--check-slave-lag'ï¼å该é项æå®çæ¶é´ä¸ºå·¥å
·åç°ä¸»ä»å¤å¶å»¶è¿æ¶æåçæ¶é´ãæ¯è¿è¡æä½100è¡æ¶è¿è¡ä¸æ¬¡æ£æ¥ã--columnsï¼-cæå®éè¦å½æ¡£ç表å段ï¼å¦æå¤ä¸ªåç¨','(éå·)éå¼ã--commit-eachæå®ææ¯æ¬¡è·ååå½æ¡£çè¡æ°è¿è¡æ交ï¼è¯¥é项ä¼ç¦ç¨é项'--txn-size'ãå¨æ¯æ¬¡è·å表æ°æ®å¹¶è¿è¡å½æ¡£ä¹åï¼å¨è·åä¸ä¸æ¬¡æ°æ®åé项'--sleep'æå®çä¼ç æ¶é´ä¹åï¼è¿è¡äºå¡æ交åå·æ°é项'--file'æå®çæ件ï¼éè¿é项'--limit'æ§å¶äºå¡ç大å°ã--hostï¼-hæå®è¿æ¥çæ°æ®åºIPå°åã--portï¼-Pæå®è¿æ¥çæ°æ®åºPort端å£ã--userï¼-uæå®è¿æ¥çæ°æ®åºç¨æ·ã--passwordï¼-pæå®è¿æ¥çæ°æ®åºç¨æ·å¯ç ã--socketï¼-Sæå®ä½¿ç¨SOCKETæ件è¿æ¥ã--databasesï¼-dæå®è¿æ¥çæ°æ®åº--sourceæå®éè¦è¿è¡å½æ¡£æä½ç表ï¼è¯¥é项æ¯å¿
é¡»æå®çé项ï¼ä½¿ç¨DSNæ¹å¼è¡¨ç¤ºã--destæå®è¦å½æ¡£å°çç®æ 端表ï¼ä½¿ç¨DSNæ¹å¼è¡¨ç¤ºãå¦æ该é项没ææå®çè¯ï¼åé»è®¤ä¸é项'--source'æå®æºç«¯è¡¨ä¸ºç¸å表ã--whereæå®éè¿WHEREæ¡ä»¶è¯å¥æå®éè¦å½æ¡£çæ°æ®ï¼è¯¥é项æ¯å¿
é¡»æå®çé项ãä¸éè¦å ä¸'WHERE'å
³é®åï¼å¦æç¡®å®ä¸éè¦WHEREæ¡ä»¶è¿è¡éå¶ï¼åæå®'--where 1=1'ã--fileæå®è¡¨æ°æ®éè¦å½æ¡£å°çæ件ã使ç¨ç±»ä¼¼MySQL DATE_FORMAT()æ ¼å¼åå½åæ¹å¼ãæ件å
容ä¸MySQLä¸SELECT INTO OUTFILEè¯å¥ä½¿ç¨ç¸åçæ ¼å¼ï¼æ件å½åé项å¦ä¸æ示ï¼'%Yï¼å¹´ï¼4ä½æ°(Year, numeric, four digits) %mï¼æï¼2ä½æ°(Month, numeric (01..12)) %dï¼æ¥ï¼2ä½æ°(Day of the month, numeric (01..31)) %Hï¼å°æ¶(Hour (00..23)) %iï¼åé(Minutes, numeric (00..59)) %sï¼ç§(Seconds (00..59)) %Dï¼æ°æ®åºå(Database name) %tï¼è¡¨å(Table name) ä¾å¦ï¼--file '/var/log/archive/%Y-%m-%d-%D.%t''--output-formatæå®é项'--file'æ件å
容è¾åºçæ ¼å¼ãé»è®¤ä¸æå®è¯¥é项æ¯ä»¥å¶è¡¨ç¬¦è¿è¡å段çåé符ï¼å¦ææå®è¯¥é项ï¼å使ç¨','(éå·)ä½ä¸ºå段åé符ï¼ä½¿ç¨'"'(åå¼å·)å°å段æ¬èµ·ãç¨æ³ç¤ºä¾ï¼'--output-format=dump'ã--for-updateæå®ä¸ºæ¯æ¬¡å½æ¡£æ§è¡çSELECTè¯å¥æ·»å FOR UPDATEåå¥ã--share-lockæå®ä¸ºæ¯æ¬¡å½æ¡£æ§è¡çSELECTè¯å¥æ·»å LOCK IN SHARE MODEåå¥ã--headeræå®å¨æ件ä¸ç¬¬ä¸è¡åå
¥å段å称ä½ä¸ºæ é¢ã--ignoreæå®ä¸ºINSERTè¯å¥æ·»å IGNOREé项ã--limité»è®¤å¼ï¼1æå®æ¯æ¡è¯å¥è·å表åå½æ¡£è¡¨çè¡æ°ã--localæå®ä¸å°OPTIMIZEåANALYZEè¯å¥åå
¥binlogã--max-lagé»è®¤å¼ï¼1sæå®å
许主ä»å¤å¶å»¶è¿æ¶é¿çæ大å¼ï¼åä½ç§ãå¦æå¨æ¯æ¬¡è·åè¡æ°æ®ä¹å主ä»å»¶è¿è¶
è¿æå®çå¼ï¼åå½æ¡£æä½å°æåæ§è¡ï¼æåä¼ç æ¶é´ä¸ºé项'--check-interval'æå®çå¼ãå¾
ä¼ç æ¶é´ç»æä¹åå次æ£æ¥ä¸»ä»å»¶è¿æ¶é¿ï¼æ£æ¥æ¹æ³æ¯éè¿ä»åºæ¥è¯¢ç'Seconds_Behind_Master'å¼æ¥ç¡®å®ãå¦æ主ä»å¤å¶å»¶è¿ä¸ç´å¤§äºè¯¥åæ°æå®å¼æè
ä»åºåæ¢å¤å¶ï¼åæä½å°ä¸ç´çå¾
ç´å°ä»åºéæ°å¯å¨å¹¶ä¸å»¶è¿å°äºè¯¥åæ°æå®å¼ã--no-deleteæå®ä¸å é¤å·²è¢«å½æ¡£ç表æ°æ®ã--optimizeæå®å·¥å
·å®ææ°æ®å½æ¡£å对表æ§è¡'OPTIMIZE TABLE'æä½ãæå®æ¹æ³å¦'--analyze=ds'ï¼s代表æºç«¯è¡¨ï¼d代表ç®æ 端表ï¼ä¹å¯ä»¥åç¬æå®ã--primary-key-onlyæå®åªå½æ¡£ä¸»é®å段ï¼æ¯é项'--columns=主é®'çç®åãå¦æå·¥å
·å½æ¡£çæä½æ¯è¿è¡DELETEæ¸
é¤æ¶æææï¼å 为åªé读å主é®ä¸ä¸ªå段èæ é读åè¡ææå段ã--progressæå®æ¯å¤å°è¡æå°è¿åº¦ä¿¡æ¯ï¼æå°å½åæ¶é´ï¼å·²ç¨æ¶é´ä»¥åå¤å°è¡è¿è¡å½æ¡£ã--purgeæå®æ§è¡çæ¸
é¤æä½èä¸æ¯å½æ¡£æä½ãå
许忽ç¥é项'--dest'å'--file'è¿è¡æä½ï¼å¦æåªæ¯æ¸
é¤æä½å¯ä»¥ç»åé项'--primary-key-only'ä¼æ´é«æã--quietï¼-qæå®å·¥å
·éé»æ§è¡ï¼ä¸è¾åºä»»ä½çæ§è¡ä¿¡æ¯ã--replaceæå®åå
¥é项'--dest'æå®ç®æ 端表æ¶æ¹åINSERTè¯å¥ä¸ºREPLACEè¯å¥ã--retriesé»è®¤å¼ï¼1æå®å½æ¡£æä½éå°æ»éæè¶
æ¶çéè¯æ¬¡æ°ãå½éè¯æ¬¡æ°è¶
è¿è¯¥é项æå®çå¼æ¶ï¼å·¥å
·å°æ¥ééåºã--run-timeæå®å·¥å
·å½æ¡£æä½å¨éåºä¹åéè¦è¿è¡çæ¶é´ãå
许çæ¶é´åç¼å为s=ç§ï¼m=åï¼h=å°æ¶ï¼d=天ï¼å¦æ没æå®ï¼é»è®¤ä¸ºsã--[no]safe-auto-incrementé»è®¤å¼ï¼yesæå®ä¸ä½¿ç¨èªå¢å(AUTO_INCREMENT)æ大å¼å¯¹åºçè¡è¿è¡å½æ¡£ã该é项å¨è¿è¡å½æ¡£æ¸
é¤æ¶ä¼é¢å¤æ·»å ä¸æ¡WHEREåå¥ä»¥é²æ¢å·¥å
·å é¤ååååºå段å
·æçå
·æAUTO_INCREMENTå±æ§æ大å¼çæ°æ®è¡ï¼ä¸ºäºå¨æ°æ®åºéå¯ä¹åè¿è½ä½¿ç¨å°AUTO_INCREMENT对åºçå¼ï¼ä½è¿ä¼å¼èµ·æ æ³å½æ¡£ææ¸
é¤å段对åºæ大å¼çè¡ã--set-varsé»è®¤ï¼ wait_timeout=10000 innodb_lock_wait_timeout=1 lock_wait_timeout=60å·¥å
·å½æ¡£æ¶æå®åæ°å¼ï¼å¦æå¤ä¸ªç¨','(éå·)åéãå¦'--set-vars=wait_timeout=5000'ã--skip-foreign-key-checksæå®ä½¿ç¨è¯å¥SET FOREIGN_KEY_CHECKS = 0ç¦ç¨å¤é®æ£æ¥ã--sleepæå®å·¥å
·å¨éè¿SELECTè¯å¥è·åå½æ¡£æ°æ®éè¦ä¼ç çæ¶é´ï¼é»è®¤å¼æ¯ä¸è¿è¡ä¼ç ãå¨ä¼ç ä¹åäºå¡å¹¶ä¸ä¼æ交ï¼å¹¶ä¸é项'--file'æå®çæ件ä¸ä¼è¢«å·æ°ãå¦ææå®é项'--commit-each'ï¼åå¨ä¼ç ä¹åä¼è¿è¡äºå¡æ交åæ件å·æ°ã--statisticsæå®å·¥å
·æ¶é并æå°æä½çæ¶é´ç»è®¡ä¿¡æ¯ãç»è®¡ä¿¡æ¯ç¤ºä¾å¦ä¸ï¼'Started at 2008-07-18T07:18:53, ended at 2008-07-18T07:18:53Source: D=db,t=tableSELECT 4INSERT 4DELETE 4Action Count Time Pctcommit 10 0.1079 88.27select 5 0.0047 3.87deleting 4 0.0028 2.29inserting 4 0.0028 2.28other 0 0.0040 3.29'--txn-sizeé»è®¤ï¼1æå®æ¯ä¸ªäºå¡å¤ççè¡æ°ãå¦ææ¯0åç¦ç¨äºå¡åè½ã--versionæ¾ç¤ºå·¥å
·ççæ¬å¹¶éåºã--[no]version-checké»è®¤å¼ï¼yesæ£æ¥Percona ToolkitãMySQLåå
¶ä»ç¨åºçææ°çæ¬ã--why-quitæå®å·¥å
·æå°å½éå å®æå½æ¡£è¡æ°éåºçåå ãå¨æ§è¡ä¸ä¸ªèªå¨å½æ¡£ä»»å¡æ¶è¯¥é项ä¸é项'--run-time'ä¸èµ·ä½¿ç¨é常æ¹ä¾¿ï¼è¿æ ·å¯ä»¥ç¡®å®å½æ¡£ä»»å¡æ¯å¦å¨æå®çæ¶é´å
å®æãå¦æåæ¶æå®äºé项'--statistics'ï¼åä¼æå°ææéåºçåå ã
äºãåç解æ
æ ¹æ®general logçè¾åºï¼æ们æ´çåºæ¶åºè¡¨æ ¼å¦ä¸
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5iZ4YTNmRmN1IDZ3UGZ3cjZ3QjZ2EmM0QjN4UTNjJWOz8CX0JXZ252bj91Ztl2Lc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
ä¸ãå ¶ä»è¯´æ
åä¸çè¿ä¸ªè¿ç¨è²ä¼¼ä¹æ²¡æä»ä¹é®é¢ï¼ä½æ¯ï¼åå¦å¨å表æ«æåºæ°æ®ï¼æå ¥å°æ°è¡¨çè¿ç¨ä¸ï¼æ§æ°æ®åçäºååæä¹åï¼
带çè¿ä¸ªçé®ï¼æ们è¿è¡äºæºç çè·è¸ªï¼æ们å¨pt-archiverç6839è¡æä¸äºæç¹
ç¶åæåå«å¨å 个sessionçªå£åäºå¦ä¸å¨ä½
æåpt-archiverè¾åºå¦ä¸ï¼
# A software update is available:TIME ELAPSED COUNT2020-04-08T09:13:21 0 02020-04-08T09:13:21 0 1Started at 2020-04-08T09:13:21, ended at 2020-04-08T09:13:51Source: A=utf8mb4,D=xucl,P=3306,h=127.0.0.1,p=...,t=t1,u=xuclDest: A=utf8mb4,D=xucl_archive,P=3306,h=127.0.0.1,p=...,t=t1,u=xuclSELECT 1INSERT 1DELETE 1Action Count Time Pctsleep 1 30.0002 99.89inserting 1 0.0213 0.07commit 2 0.0080 0.03select 2 0.0017 0.01deleting 1 0.0005 0.00other 0 0.0008 0.00
å¾ææ¾ï¼id=3è¿æ¡è®°å½å¹¶æ²¡æè¿è¡å½æ¡£(æ们è¿éæ¯æ¹äºæ¡ä»¶åï¼å®é ç产ä¸å¯è½æ¯æ´æ¹äºå ¶ä»åï¼é æå½æ¡£æ°æ®ä¸åç¡®)
é£ä¹å¦ä½æ¥è§£å³è¿ç§æ åµçåçå¢ï¼
æ¾ç¶ï¼æ°æ®åºå¨æ°æ®åºä¸å¯ä»¥éè¿å æå®éæ¥é²æ¢å ¶ä»ç¨åºä¿®æ¹å¯¹åºçæ°æ®ï¼pt-archiverå ¶å®æ©å°±å·²ç»å¸®æ们èèå°äºè¿æ ·çæ åµï¼pt-archiveræä¾äºä¸¤ç§éæ©
- --for-updateï¼Adds the FOR UPDATE modifier to SELECT statements
- --share-lockï¼Adds the LOCK IN SHARE MODE modifier to SELECT statements
åãæ»ç»
- pt-archiverä½ä¸ºå½æ¡£å·¥å ·æ çæ¯MySQL DBAæ¥å¸¸è¿ç»´ç大å©å¨ä¹ä¸ï¼å¨ä½¿ç¨è¿ç¨ä¸å¨ç¥éå¦ä½ä½¿ç¨çåºç¡ä¸ä¹è½å¤ç¥æå ¶åç
- å½æ¡£è¿ç¨ä¸æ好è½å¯¹å½æ¡£è®°å½è¿è¡å éæä½ï¼ä»¥å é æå½æ¡£æ°æ®ä¸åç¡®
- å¨ä¸»ä»ç¯å¢ä¸ï¼å½æ¡£è¿ç¨æ好æ§å¶é度ï¼ä»¥å é æ主ä»å»¶è¿
- å°½éæ§å¶å¥½chunkç大å°ï¼ä¸è¦è¿å¤§ï¼é æ大äºå¡
äºãéå½
ä¸ä¼perlææç¹è°è¯ï¼ç½ä¸æ¾äºä¸äºææç¹çæå·§ï¼å¨è¿éè®°å½ä¸ä¸
perl -d filename
è¿å¥æ¯è¿å
¥perlçè°è¯å½ä»¤
ç¶åå±å¹ä¸ä¼åºç°å¦ä¸åæ ·ï¼
Enter h or `h h' for help, or `man perldebug' for more help.
main::(filename:linenumber)
linenumber: content;
DB<1>
filenameå³æè°è¯çæ件åï¼linenumberæ¾ç¤ºçæ¯å½åè°è¯è¯å¥çè¡å·ï¼contentä¹å³å½åè°è¯çè¯å¥ï¼DB<1>åè·çé»è²å°æ¹åçå
æ
1ãæ¤æ¶å¯ä»¥è¾å
¥nï¼ç¸å½äºVisual Studioä¸çF10ï¼è¿å
¥ä¸ä¸å¥çè°è¯
2ãå¦ææ³ç´æ¥è¿è¡å°ç¬¬Nè¡è¯å¥ï¼å¯ä»¥å¨ç¬¬Nè¡å¤è®¾ç½®ä¸ä¸ªæç¹ï¼b N (å°Næ¿æ¢ä¸ºéè¦è®¾ç½®æç¹çè¡
å·)ï¼å车åæç¹è®¾ç½®æåï¼å¯ä»¥è¾å
¥Læ¥æ¥çæ设置çæææç¹æ
åµï¼ä¸æ³æ¥çä¹å¯ä»¥ç´æ¥è¾å
¥cï¼
å车åå°±ç´æ¥è¿è¡å°è®¾ç½®æç¹çè¯å¥å¤äº
3ãæ³è¦å é¤æç¹å¯ä»¥ç¨ B N (å°Næ¿æ¢ä¸ºéè¦è®¾ç½®æç¹çè¡å·)ï¼å车åæå¨è¡å¤çæç¹å³è¢«å é¤ï¼
ä¹å¯ä»¥éè¿B *æ¥å é¤ææçæç¹
4ãæ³è¦æ¥çåéçå¼ï¼éè¿print åéå å°±å¯ä»¥æ¥çäº
5ãä¹å¯ä»¥éè¿ç»åéèµå¼æ¥ç´æ¥æ¹åè°è¯ä¸èæ¬éçåéçå¼ï¼æ¯å¦ç´æ¥è¾å
¥ï¼$debug = 0ï¼è¿æ ·
$debugçå¼å°±è¢«èµä¸º0äº
6ãéåºè°è¯ï¼åªè¦è¾å
¥qå³å¯
åèæç«
ãperlèæ¬çç®åè°è¯æ¹æ³ã:
https://blog.csdn.net/wenwenxiong/article/details/47757715
ãPercona-Toolkit ä¹ pt-archiver æ»ç»ã:
https://www.cnblogs.com/dbabd/p/10721857.html#_label11