檢查MySQL數(shù)據(jù)是否一致用到的工具

下文給大家?guī)?lái)有關(guān)檢查MySQL數(shù)據(jù)是否一致用到的工具內(nèi)容,相信大家一定看過(guò)類(lèi)似的文章。我們給大家?guī)?lái)的有何不同呢?一起來(lái)看看正文部分吧,相信看完檢查MySQL數(shù)據(jù)是否一致用到的工具你一定會(huì)有所收獲。

作為一家“創(chuàng)意+整合+營(yíng)銷(xiāo)”的成都網(wǎng)站建設(shè)機(jī)構(gòu),我們?cè)跇I(yè)內(nèi)良好的客戶(hù)口碑。創(chuàng)新互聯(lián)提供從前期的網(wǎng)站品牌分析策劃、網(wǎng)站設(shè)計(jì)、成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、創(chuàng)意表現(xiàn)、網(wǎng)頁(yè)制作、系統(tǒng)開(kāi)發(fā)以及后續(xù)網(wǎng)站營(yíng)銷(xiāo)運(yùn)營(yíng)等一系列服務(wù),幫助企業(yè)打造創(chuàng)新的互聯(lián)網(wǎng)品牌經(jīng)營(yíng)模式與有效的網(wǎng)絡(luò)營(yíng)銷(xiāo)方法,創(chuàng)造更大的價(jià)值。

1、MySQL checksum命令

在執(zhí)行checksum命令時(shí),表會(huì)被加一個(gè)讀鎖(read lock),checksum table的原理是對(duì)表中的數(shù)據(jù)進(jìn)行一行一行的較驗(yàn)和計(jì)算,因些對(duì)于大表,這是一個(gè)很耗時(shí)的過(guò)程。
如果對(duì)于myisam表,建表時(shí)加上CHECKSUM=1選項(xiàng),那么在對(duì)這樣的表進(jìn)行checksum table時(shí)將會(huì)非???/p>

checksum table test.tbname;
root@test09:43:36>checksum table test.tbname;
+-------------+------------+
| Table       | Checksum   |
+-------------+------------+
| test.tbname | 1105600045 |
+-------------+------------+
1 row in set (0.00 sec)
具體邏輯見(jiàn)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工具集的一個(gè)腳本,可以用來(lái)對(duì)比不同數(shù)據(jù)庫(kù)之間的表結(jié)構(gòu),或者同個(gè)數(shù)據(jù)庫(kù)間的表結(jié)構(gòu)。
下載地址:
https://dev.mysql.com/downloads/utilities/
示例一:檢查server1,server2上的某個(gè)表結(jié)構(gòu)是否一致
mysqldiff --server1=user:pwd@host:port --server2=user:pwd@host:port --changes-for=server2  dbname.tablename:dbname.tablename
示例二:檢查server1,server2上的兩個(gè)數(shù)據(jù)庫(kù)中的表結(jié)構(gòu)是否一致
mysqldiff --server1=user:pwd@host:port --server2=user:pwd@host:port dbname:dbname --changes-for=server2

3、mysqldbcompare
mysqldiff該工具是官方mysql-utilities工具集的一個(gè)腳本,可以用來(lái)檢查不同數(shù)據(jù)庫(kù)之間的數(shù)據(jù)一致性,檢查內(nèi)容包括數(shù)據(jù)庫(kù)字符集、表結(jié)構(gòu)、數(shù)據(jù)內(nèi)容,只要有一個(gè)不一樣,則檢查不通過(guò)。
示例:
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是在線的主從數(shù)據(jù)一致性檢查工具,能夠?qū)Υ髷?shù)據(jù)量的數(shù)據(jù)庫(kù)進(jìn)行高效的主從數(shù)據(jù)一致性檢查,能夠自動(dòng)控制檢查數(shù)據(jù)量的大小,避免對(duì)線上業(yè)務(wù)造成較大的影響。下面對(duì)展示該工具的常見(jiàn)幾種用法,更多細(xì)節(jié)見(jiàn)pt-table-checksum官方幫助文檔。

示例一:對(duì)特定表的一致性進(jìn)行檢查
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'

示例二:對(duì)特定數(shù)據(jù)庫(kù)的一致性進(jìn)行檢查
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'

示例三:對(duì)所有數(shù)據(jù)庫(kù)的一致性進(jìn)行檢查
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

對(duì)于上文關(guān)于檢查MySQL數(shù)據(jù)是否一致用到的工具,大家覺(jué)得是自己想要的嗎?如果想要了解更多相關(guān),可以繼續(xù)關(guān)注我們的行業(yè)資訊板塊。 

本文名稱(chēng):檢查MySQL數(shù)據(jù)是否一致用到的工具
網(wǎng)頁(yè)URL:http://muchs.cn/article46/ishdhg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、Google、網(wǎng)站設(shè)計(jì)、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、定制網(wǎng)站、面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)