检查MySQL数据是否一致用到的工具
admin
2023-05-10 05:01:13
0

下文给大家带来有关检查MySQL数据是否一致用到的工具内容,相信大家一定看过类似的文章。我们给大家带来的有何不同呢?一起来看看正文部分吧,相信看完检查MySQL数据是否一致用到的工具你一定会有所收获。

1、MySQL checksum命令

在执行checksum命令时,表会被加一个读锁(read lock),checksum table的原理是对表中的数据进行一行一行的较验和计算,因些对于大表,这是一个很耗时的过程。
如果对于myisam表,建表时加上CHECKSUM=1选项,那么在对这样的表进行checksum table时将会非常快

checksum table test.tbname;
root@test09:43:36>checksum table test.tbname;
+-------------+------------+
| Table       | Checksum   |
+-------------+------------+
| test.tbname | 1105600045 |
+-------------+------------+
1 row in set (0.00 sec)
具体逻辑见MySQL源码(MySQL 5.7.17):
sql/sql_table.cc
bool mysql_checksum_table(THD thd, TABLE_LIST tables,HA_CHECK_OPT *check_opt)

2、mysqldiff
mysqldiff该工具是官方mysql-utilities工具集的一个脚本,可以用来对比不同数据库之间的表结构,或者同个数据库间的表结构。
下载地址:
https://dev.mysql.com/downloads/utilities/
示例一:检查server1,server2上的某个表结构是否一致
mysqldiff --server1=user:pwd@host:port --server2=user:pwd@host:port --changes-for=server2  dbname.tablename:dbname.tablename
示例二:检查server1,server2上的两个数据库中的表结构是否一致
mysqldiff --server1=user:pwd@host:port --server2=user:pwd@host:port dbname:dbname --changes-for=server2

3、mysqldbcompare
mysqldiff该工具是官方mysql-utilities工具集的一个脚本,可以用来检查不同数据库之间的数据一致性,检查内容包括数据库字符集、表结构、数据内容,只要有一个不一样,则检查不通过。
示例:
mysqldbcompare --server1=user:pwd@192.168.56.110:3306 --server2=user:pwd@192.168.56.111:3306 --changes-for=server1 dbname:dbname

4、pt-table-checksum
pt-table-checksum是在线的主从数据一致性检查工具,能够对大数据量的数据库进行高效的主从数据一致性检查,能够自动控制检查数据量的大小,避免对线上业务造成较大的影响。下面对展示该工具的常见几种用法,更多细节见pt-table-checksum官方帮助文档。

示例一:对特定表的一致性进行检查
pt-table-checksum --host='192.168.56.110' --user='admin' --password='pwd' --port=3306 --recursion-method=processlist --replicate=percona.checksums --no-check-binlog-format --chunk-time=0.5 --tables='dbname.tb1,dbname2.tb2'

示例二:对特定数据库的一致性进行检查
pt-table-checksum --host='192.168.56.110' --user='admin' --password='pwd' --port=3306 --recursion-method=processlist --replicate=percona.checksums --no-check-binlog-format --chunk-time=0.5 --databases='dbname1,dbname2'

示例三:对所有数据库的一致性进行检查
pt-table-checksum --host='192.168.56.110' --user='admin' --password='pwd' --port=3306 --recursion-method=processlist --replicate=percona.checksums --no-check-binlog-format --chunk-time=0.5

对于上文关于检查MySQL数据是否一致用到的工具,大家觉得是自己想要的吗?如果想要了解更多相关,可以继续关注我们的行业资讯板块。 

相关内容

热门资讯

以军士兵集体丢掉武器抗命,大喊... 据凤凰卫视报道,以色列国防军一军事基地7月30日发生士兵抗命事件,约120名士兵抗议指挥官做法,将武...
蒋成华任商务部副部长 国务院任免国家工作人员。任命蒋成华为商务部副部长。免去蒋成华的商务部国际贸易谈判副代表职务。
伊朗驻华大使:在军事威胁下,不... 新华社北京7月31日电(记者刁慧琳) 伊朗驻华大使法兹里7月28日表示,伊美回到谈判桌的前提是美国必...
伊朗革命卫队在霍尔木兹海峡击中... 当地时间31日,伊朗伊斯兰革命卫队发布声明称,革命卫队海军当天在霍尔木兹海峡击中并扣留了两艘违反禁令...
美媒:特朗普,遇到了一个更强硬... 据《纽约时报》7月29日报道,就在特朗普总统看似放弃战事升级计划几天后,美国再次与伊朗交火。上周末,...
女子做气管镜时不幸身亡,丈夫称... 7月29日,西安刘先生反映妻子在当地医院做支气管镜检查时死亡,看监控时发现医生疑有违规操作。刘先生表...
全网“帮卖西瓜”,然后呢? 近日,河南部分地区西瓜滞销的消息在网上热度很高。很多地方也伸出援手:有景区收购千斤西瓜、免费赠予游客...
美媒:乌克兰袭击伊朗船只,险引... 据《纽约时报》7月28日报道,据伊朗和西方官员称,伊朗曾考虑攻击乌克兰的一个港口,以报复乌克兰对一艘...
20年里,他只画美女,用东方风... 迈进KIM在上海的工作室,迎面是一整墙的美女们。她们像是刚从一场时髦的沙龙里退场,或倚或立,眉宇间是...
Google在港推出AI代理G... 观点网讯:7月29日,Google在香港推出AI代理Gemini Spark,该代理可全天候在后台运...