pt-table-sync同步報錯Called not_in_left in state 0 at /usr/bin/pt-table-sync line 5231【原創】
阿新 • • 發佈:2018-11-12
試驗環境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.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*/;
查詢/pt-table-sync line 5231發現,顯示在左邊沒有找到,即在從庫沒有找到。就證明我在從庫執行了語句是成功了,所以報錯。
把pt-sync命令寫shell檔案中執行則不會報錯
[[email protected]02 ~]# sh pt.sh > pt-check.log.`date +%F` [[email protected]02 ~]#
歡迎轉載,請註明出處