検証中にpt-table-checksumで発生したエラーの概要

エラー1

Skipping table db.table because on the master it would be checksummed in one chunk but on these replicas it has too many rows

理由:パラメータ-chunk-size-limitはデフォルトで2です。行数が多い大きなテーブルが検出されると、pt-table-checksumがチェックをスキップする場合があります

解決策:出力プロンプトに従って–chunk-size-limitを適切に増やすことができます

エラー2

Cannot connect to h=ip,p=password,u=user
This server returned more than one row for SHOW SLAVE STATUS but "channel" was not specified on the command line at pt-table-checksum line 5401.

理由:マルチソーススレーブライブラリ、エラーは無視できます

エラー3

Cannot connect to h=ip,p=password,u=user
08-30T22:31:30 Replication filters are set on these hosts:
hostname
    slave_skip_errors = 1062
Please read the --check-replication-filters documentation to learn how to solve this problem. at pt-table-checksum line 9878.

理由:異常なマシンが同期フィルタールールを設定しました

エラー4

Cannot connect to h=ip,p=password,u=user
Cannot connect to h=ip,p=password,u=user
Cannot connect to h=ip,p=password,u=user
Cannot connect to h=ip,p=password,u=user

理由:パラメータ-recursion-method = processlistは検証中に使用されます。つまり、show processlistパラメータは、メインライブラリマシン上のスレーブライブラリIPを取得するために使用されますが、このコマンドによってスレーブライブラリIPだけでなく、他のデータベースIPも取得されるため、接続されます他のマシンが接続されていない場合

解決策:パラメーター–recursion-methodの値を–recursion-method dsn = D = db、t = dsnsに変更します。つまり、チェックする必要があるスレーブライブラリIPをテーブルに書き込みます。pt検証ツールはスレーブに従いますスレーブライブラリに接続するためのライブラリ情報、マスター/スレーブデータの整合性を確認するためのテーブルを作成

テーブル作成ステートメント:

CREATE TABLE dbname.`dsns` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`parent_id` int(11) DEFAULT NULL,
`dsn` varchar(255) NOT NULL,
PRIMARY KEY (`id`));

ライブラリ情報からステートメントを挿入

insert into dbname.dsns select null,1,'h=slaveip,u=user,p=password,P=port';

おすすめ

転載: blog.csdn.net/weixin_43202081/article/details/108488648
おすすめ