1. 程式人生 > >pt-table-sync同步報錯Called not_in_left in state 0 at /usr/bin/pt-table-sync line 5231【原創】

pt-table-sync同步報錯Called not_in_left in state 0 at /usr/bin/pt-table-sync line 5231【原創】

試驗環境MySQL5.7.19,自己使用pt-table-sync 3.0.2版本同步後,手動在從庫執行後,在用pt-table-sync驗證時報錯

命令如下:

pt-table-sync --print h=10.2.9.84,P=3306,u=使用者名稱,p="密碼" --databases jrtsdev h=10.2.9.83,P=3306,u=使用者名稱,p="密碼" --no-check-slave

報錯如下

Called not_in_left in state 0 at /usr/bin/pt-table-sync line 5231.  while doing jrtsdev.ord_bank_payment_resp on 10.2.9.83

INSERT INTO `jrtsdev`.`ord_contact`() VALUES () /*percona-toolkit src_db:jrtsdev src_tbl:ord_contact src_dsn:P=3306,h=10.2.9.84,p=...,u=appuser dst_db:jrtsdev dst_tbl:ord_contact dst_dsn:P=3306,h=10.2.9.83,p=...,u=appuser lock:0 transaction:1 changing_src:0 replicate:0 bidirectional:0 pid:18126 user:root host:excbjdcpsql02*/;
INSERT INTO `jrtsdev`.`ord_contact`() VALUES () /*percona-toolkit src_db:jrtsdev src_tbl:ord_contact src_dsn:P=3306,h=10.2.9.8
4,p=...,u=appuser dst_db:jrtsdev dst_tbl:ord_contact dst_dsn:P=3306,h=10.2.9.83,p=...,u=appuser lock:0 transaction:1 changing_src:0 replicate:0 bidirectional:0 pid:18126 user:root host:excbjdcpsql02*/;

 

查詢/pt-table-sync line 5231發現,顯示在左邊沒有找到,即在從庫沒有找到。就證明我在從庫執行了語句是成功了,所以報錯。

 

把pt-sync命令寫shell檔案中執行則不會報錯

[[email protected]02 ~]# sh pt.sh > pt-check.log.`date +%F`
[[email protected]02 ~]# 

 

歡迎轉載,請註明出處