3.6.0在使用dsn的情况下存在bug,最后回退3.4.0版本
 创建ptuser用户 
 
 #使用验证算法,否则默认会报错 
 
  #创建用户
create user 'ptuser'@'%' identified with sha256_password by "你的密码";
 
 
create user 'ptuser'@'%' identified with sha256_password by "你的密码";
 #发现用dsn还是会报对应错误 
 
 #授权 
 
GRANT CREATE,INSERT,SELECT,DELETE,UPDATE,LOCK TABLES,PROCESS,SUPER,REPLICATION SLAVE ON *.* TO 'ptuser'@'%';
 #执行如下命令  校验nacos主从是否一致 
 
 pt-table-checksum --explain  --nocheck-replication-filters --no-check-binlog-format  --replicate=test.checksums --recursion-method=hosts --databases=nacos --host=localhost --user=ptuser --port=13306 --ask-pass 
 
 加了explain不写入checksums表。  
   去除explain选项 
  pt-table-checksum  --nocheck-replication-filters --no-check-binlog-format  --replicate=test.checksums --recursion-method=hosts --databases=nacos --host=localhost --user=ptuser --port=13306 --ask-pass 
    提示无法发现slave,查询得知:
recursion-method 如果使用hosts 需要更改从库参数,并重新启动。
 recursion-method 如果使用hosts 需要更改从库参数,并重新启动。
 因此使用dsn方式。 
  主库创建percona相关库及表 
  create database percona_schema; 
   CREATE TABLE percona_schema.dsns ( id int(11) NOT NULL AUTO_INCREMENT, parent_id int(11) DEFAULT NULL, dsn varchar(255) NOT NULL, PRIMARY KEY (id));  
   #插入从库记录 
  INSERT INTO percona_schema.dsns(dsn) VALUES ('h=10.255.216.78,P=13306,u=ptuser,p=你的密码'); #将从库的DSN信息写入DSN表 
   退出数据库,使用如下命令   
  pt-table-checksum  --nocheck-replication-filters --no-check-binlog-format  --replicate=test.checksums --recursion-method dsn=t=percona_schema.dsns --databases=nacos --host=localhost --user=ptuser --port=13306 --ask-pass 
   报错 
  7-05T16:13:00 Error checksumming table nacos.permissions: DBI connect(';;mysql_read_default_group=client','',...) failed: Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/lib64/mysql/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory at /bin/pt-table-checksum line 1639.  
   更改用户认证方式为native试一下: 
  ALTER USER  'ptuser'@'%'  IDENTIFIED WITH 'mysql_native_password' BY '你的密码'; 
   flush privileges; 
   还是报错。查看插件都已经改过来了 
  查看perl-DBD版本 
  [root@CQ2-LM9601028 ~]# rpm -qa|grep perl-DBD perl-DBD-MySQL-4.023-6.el7.x86_64 
   查看链接:https://perconadev.atlassian.net/browse/PT-1724  
  似乎要升级一下插件 
  http://repo.percona.com/tools/yum/experimental/7/RPMS/x86_64/perl-DBD-MySQL-4.050-4.el7.x86_64.rpm 
 主从库升级后,还是报错
 Error checksumming table nacos.config_info: DBI connect(';;mysql_read_default_group=client','',...) failed: Access denied for user 'root'@'localhost' (using password: NO) at /bin/pt-table-checksum line 1639. 
  根本不管连接的用户,发现海外用户有类似报告https://perconadev.atlassian.net/browse/PT-2250 
  退回 3.4.0版本。 
 回退一个rpm包
rpm -Uvh --oldpackage percona-toolkit-3.4.0-3.el7.x86_64.rpm
执行如上命令
 pt-table-checksum  --nocheck-replication-filters --no-check-binlog-format  --replicate=test.checksums --recursion-method dsn=t=percona_schema.dsns --databases=nacos --host=localhost --user=ptuser --port=13306 --ask-pass 
  成功,发现记录不一样。使用同步工具
pt-table-sync修复
 由于是生产库,数据量很小,直接重搭。 
   通过重新导入,再次校验,成功。