mysql 数据校验_技术分享 | mysql 表数据校验

作者:杨涛涛

来源于客户的问题:数据库校验的方法有哪些,能否给他说说?

我:直接 percona toolkit 不就行了。

客户:服务器装任何软件都得评审,评审一次多长时间不定。而且不准用开源软件。

我:...

好了,来看下 MySQL 自身怎么对数据进行校验。

1.checksum table.

checksum table 会对表一行一行进行计算,直到计算出最终的 checksum 结果。

比如对表 n4 进行校验(记录数 157W,大小为 4G)

[ytt]>desc n4;

+-------+--------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+-------+--------------+------+-----+---------+-------+

| id | int(11) | YES | | NULL | |

| r1 | char(36) | YES | | NULL | |

| r2 | varchar(100) | YES | | NULL | |

| r3 | datetime | YES | | NULL | |

| r4 | text | YES | | NULL | |

+-------+--------------+------+-----+---------+-------+

5 rows in set (0.00 sec)

[ytt]>select count(*) from n4;

+----------+

| count(*) |

+----------+

| 1572864 |

+----------+

1 row in set (6.89 sec)

[ytt]>checksum table n4;

+--------+-----------+

| Table | Checksum |

+--------+-----------+

| ytt.n4 | 874125175 |

+--------+-----------+

1 row

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值