mysqlpump是mysql5.7.8版本后特有的邏輯備份工具,相對于mysqldump和mysqldumper,mysqlpump擁有更多特性,官方文檔的描述如下:

1、支持多線程備份數(shù)據(jù)庫和數(shù)據(jù)庫對象,加快備份進程。
2、有更好的控制策略去備份數(shù)據(jù)庫和數(shù)據(jù)庫對象(表、存儲過程、賬戶)。
3、備份用戶通過賬戶管理SQL(create user,grant)而不再是往mysql系統(tǒng)庫插入記錄的方式
4、能創(chuàng)建壓縮文件
5、顯示進度(估算值)
6、重新加載(還原)備份文件,先建表后插入數(shù)據(jù)最后建立索引,減少了索引維護開銷,加快了還原速度。
注:mysql5.7.11版本后,mysqlpump才解決了一致性備份的問題,如果早于這個版本,邏輯備份最好采用mysqldump解決一致性備份問題。
Before MySQL 5.7.11, use of the --single-transaction option is mutually exclusive with parallelism. To use --single-transaction, disable parallelism by setting --default-parallelism to 0 and not using any instances of -- parallel-schemas: shell> mysqlpump --single-transaction --default-parallelism=0為了測試下mysqlpump性能,在自己虛擬機上做了小測試,
測試虛擬機環(huán)境:
主機:
CPU:Intel(R) Core(TM) i5-6400 CPU @ 2.70GHz 4核
內(nèi)存:1G
磁盤:SCSI硬盤 10G
數(shù)據(jù)庫:
版本:5.7.16
用sysbench準(zhǔn)備測試數(shù)據(jù),以下是測試數(shù)據(jù)準(zhǔn)備腳本:
[root@mysql1 shell]# cat test_sysbench.sh #!/bin/sh sysbench --test=oltp --mysql-host=192.168.110.100 --mysql-port=3307 --mysql-user=root --mysql-password=root --mysql-db=sbtest2 --oltp-num-tables=4 --oltp-table-size=500000 --report-interval=100 --max-requests=0 --oltp-test-mode=nontrx --oltp-nontrx-mode=select --oltp-read-only=off --max-time=30 --num-threads=16 prepare sysbench --test=oltp --mysql-host=192.168.110.100 --mysql-port=3307 --mysql-user=root --mysql-password=root --mysql-db=sbtest3 --oltp-num-tables=4 --oltp-table-size=500000 --report-interval=100 --max-requests=0 --oltp-test-mode=nontrx --oltp-nontrx-mode=select --oltp-read-only=off --max-time=30 --num-threads=16 prepare sysbench --test=oltp --mysql-host=192.168.110.100 --mysql-port=3307 --mysql-user=root --mysql-password=root --mysql-db=sbtest4 --oltp-num-tables=4 --oltp-table-size=500000 --report-interval=100 --max-requests=0 --oltp-test-mode=nontrx --oltp-nontrx-mode=select --oltp-read-only=off --max-time=30 --num-threads=16 prepare測試結(jié)果如下:(注意每次測試都需要重啟mysql服務(wù),以避免內(nèi)存緩沖對測試結(jié)果有所影響)
shell>time mysqlpump -uroot -proot -S /mysqldata/mysql/mysql3307/mysql3307.sock -A --single-transaction --default-parallelism=1 > pump.sql real 0m46.317s user 0m13.602s sys 0m3.949s shell>time mysqlpump -uroot -proot -S /mysqldata/mysql/mysql3307/mysql3307.sock -A --single-transaction --default-parallelism=2 > pump.sql real 0m48.707s user 0m15.087s sys 0m3.965s shell>time mysqlpump -uroot -proot -S /mysqldata/mysql/mysql3307/mysql3307.sock -A --single-transaction --default-parallelism=4 > pump.sql real 0m55.529s user 0m14.783s sys 0m4.143s shell>time mysqldump -uroot -proot -S /mysqldata/mysql/mysql3307/mysql3307.sock --set-gtid-purged=OFF -A --single-transaction > dump.sql real 0m57.089s user 0m8.870s sys 0m3.441s ++++++++++++++++++++++++++++++++++++++++++分割線+++++++++++++++++++++++++++++++++++++++++++ shell>time mysqlpump -uroot -proot -S /mysqldata/mysql/mysql3307/mysql3307.sock -A --single-transaction --default-parallelism=1 --compress_output=LZ4 --skip-watch-progress > pump.sql real 1m6.681s user 0m19.521s sys 0m4.041s shell>time mysqlpump -uroot -proot -S /mysqldata/mysql/mysql3307/mysql3307.sock -A --single-transaction --default-parallelism=1 --compress_output=ZLIB --skip-watch-progress > pump.sql real 1m8.877s user 0m27.315s sys 0m4.693s shell>time mysqldump -uroot -proot -S /mysqldata/mysql/mysql3307/mysql3307.sock --set-gtid-purged=OFF -A --single-transaction |gzip> dump.sql.gz real 1m8.567s user 0m20.797s sys 0m8.082s從測試結(jié)果上可以發(fā)現(xiàn):
1、mysqlpump確實比mysqldump效率高。
2、但是由于測試機磁盤IO有限,導(dǎo)致并發(fā)線程數(shù)從1提升到2和4的時候,由于IO的瓶頸,備份的時間反而增加。
3、由于測試的庫表數(shù)據(jù)較小,測試數(shù)據(jù)有所失真,建議準(zhǔn)備多幾個庫和大表的數(shù)據(jù)進行測試,效果會更明顯。
4、mysqlpump的LZ4壓縮算法壓縮效率高于ZLIB壓縮算法。
mysqlpump用法同mysqldump用法高度一致,最為有看點的就是:
1、支持基于表的多線程導(dǎo)出功能(--default-parallelism,默認(rèn)為2,--parallel-schemas,控制并行導(dǎo)出的庫)
2、導(dǎo)出的時候帶有進度條(--watch-progress,默認(rèn)開啟)
3、支持直接壓縮導(dǎo)出導(dǎo)入(參數(shù)--compress-output,而且支持ZLIB和LZ4)
詳細(xì)的用法可以通過查找官方文檔or mysqlpump --help。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
當(dāng)前文章:mysql5.7邏輯備份工具mysqlpump-創(chuàng)新互聯(lián)
當(dāng)前路徑:http://www.yijiale78.com/article22/dchjjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、網(wǎng)站策劃、自適應(yīng)網(wǎng)站、標(biāo)簽優(yōu)化、商城網(wǎng)站、軟件開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容