pt-table-checksum使用dsn方式连接检测从库
时间: 2023-08-07 11:03:43 浏览: 123
可以使用pt-table-checksum命令来检测从库数据是否与主库一致,同时也可以使用dsn方式连接从库。
下面是一个使用dsn方式连接从库的pt-table-checksum命令示例:
```
pt-table-checksum --databases=mydb \
--host=127.0.0.1 \
--port=3306 \
--user=root \
--password=passwd \
--recursion-method=dsn=D=percona,t=dsns \
--ignore-databases=mysql
```
其中,`--recursion-method`参数指定了使用dsn方式连接从库。`D=percona`表示从`percona.dsns`表中读取从库连接信息,`t=dsns`表示连接信息存储在`dsns`表中。
需要注意的是,使用dsn方式连接从库需要提前在`dsns`表中添加从库连接信息。可以使用pt-online-schema-change命令来添加`dsns`表,命令示例:
```
$ pt-online-schema-change \
--alter "CREATE TABLE dsns (\
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,\
parent_id INT UNSIGNED NOT NULL,\
\`dsn\` TEXT NOT NULL,\
UNIQUE KEY \`dsn\` (\`dsn\`(255)),\
KEY \`parent\` (\`parent_id\`)\
) ENGINE=InnoDB" \
D=percona,t=dsns \
--execute
```
上述命令将在percona库中创建dsns表。可以使用INSERT INTO语句向dsns表中添加从库连接信息。
阅读全文