溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mydumper有什么用

發(fā)布時間:2021-11-06 09:40:40 來源:億速云 閱讀:171 作者:小新 欄目:MySQL數(shù)據(jù)庫

這篇文章給大家分享的是有關mydumper有什么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

Mydumper主要特性:是一個針對MySQL的高性能多線程備份和恢復工具,開發(fā)人員主要來自MySQL,Facebook,SkySQL公司。

特性:
    1:輕量級C語言寫的
    2:執(zhí)行速度比mysqldump快10倍
    3:事務性和非事務性表一致的快照(適用于0.2.2以上版本)
    4:快速的文件壓縮
    5:支持導出binlog
    6:多線程恢復(適用于0.2.1以上版本)
    7:以守護進程的工作方式,定時快照和連續(xù)二進制日志(適用于0.5.0以上版本)
    8:開源 (GNU GPLv3)
    
安裝地址及安裝方法:
yum install glib2-devel mysql-devel zlib-devel pcre-devel zlib gcc-c++ gcc cmake -y
wget https://launchpadlibrarian.net/225370879/mydumper-0.9.1.tar.gz
tar xf mydumper-0.9.1.tar.gz
cd mydumper-0.9.1/
cmake .
make && make install




下面是percona-xtrabackup和mydumper壓縮備份后的大?。?br/>[root@test-5-69 bak]# du -sh *
3.3G 2017-02-09_04-00-02
3.3G 2017-02-10_04-00-02
3.3G 2017-02-11_04-00-02
3.3G 2017-02-12_04-00-02
3.3G 2017-02-13_04-00-02
3.3G 2017-02-14_04-00-02
3.3G 2017-02-15_04-00-02
852M all_20170215




在測試庫中使用的優(yōu)勢:
mydumper導出的形式是每個表一個文件,對開發(fā)和測試誤操作恢復十分有效。而percona-xtrabackup是對全庫,恢復也是全庫。 對單個表誤操作恢復繁瑣。




mydumper備份后的存儲格式:
[root@test-5-69 all_20170215]# ls
jxcommoninfo.orderinfo-schema.sql.gz              jxorder.ord_OrderCount.sql.gz                      metadata
jxcommoninfo.orderinfo.sql.gz                     jxorder.ord_OrderExchangeCodeDetail-schema.sql.gz  mysql.columns_priv-schema.sql.gz
jxcommoninfo-schema-create.sql.gz                 jxorder.ord_OrderExchangeCodeDetail.sql.gz         mysql.db-schema.sql.gz
jxorder.checksums-schema.sql.gz                   jxorder.ord_OrderExt-schema.sql.gz                 mysql.db.sql.gz
jxorder.dsns-schema.sql.gz                        jxorder.ord_OrderExt.sql.gz                        mysql.event-schema.sql.gz
jxorder.dsns.sql.gz                               jxorder.ord_OrderMarkLog-schema.sql.gz             mysql.func-schema.sql.gz
jxorder.dz_packingMaterialsOrder-schema.sql.gz    jxorder.ord_OrderMark-schema.sql.gz                mysql.help_category-schema.sql.gz




[root@test-5-69 all_20170215]# mydumper --help
Application Options:
  -B, --database              需要備份的數(shù)據(jù)庫,一個數(shù)據(jù)庫一條命令備份,要不就是備份所有數(shù)據(jù)庫,包括mysql。
  -T, --tables-list           需要備份的表,用逗號分隔。
  -o, --outputdir             備份文件目錄
  -s, --statement-size        生成插入語句的字節(jié)數(shù),默認1000000,這個參數(shù)不能太小,不然會報 Row bigger than statement_size for tools.t_serverinfo
  -r, --rows                  試圖用行塊來分割表,該參數(shù)關閉--chunk-filesize
  -F, --chunk-filesize        行塊分割表的文件大小,單位是MB
  -c, --compress              壓縮輸出文件
  -e, --build-empty-files     即使表沒有數(shù)據(jù),也產(chǎn)生一個空文件
  -x, --regex                 正則表達式匹配,如'db.table'
  -i, --ignore-engines        忽略的存儲引擎,用逗號分隔 
  -m, --no-schemas            不導出表結構
  -d, --no-data               不導出表數(shù)據(jù)
  -G, --triggers              導出觸發(fā)器
  -E, --events                導出事件
  -R, --routines              導出存儲過程
  -k, --no-locks              不執(zhí)行共享讀鎖 警告:這將導致不一致的備份
  --less-locking              減到最小的鎖在innodb表上.
  -l, --long-query-guard      設置長查詢時間,默認60秒,超過該時間則會報錯:There are queries in PROCESSLIST running longer than 60s, aborting dump
  -K, --kill-long-queries kill掉長時間執(zhí)行的查詢,備份報錯:Lock wait timeout exceeded; try restarting transaction


  -D, --daemon                啟用守護進程模式
  -I, --snapshot-interval     dump快照間隔時間,默認60s,需要在daemon模式下
  -L, --logfile               使用日志文件,默認標準輸出到終端
  --tz-utc                    備份的時候允許備份Timestamp,這樣會導致不同時區(qū)的備份還原會出問題,默認關閉,參數(shù):--skip-tz-utc to disable.
  --skip-tz-utc               
  --use-savepoints            使用保存點記錄元數(shù)據(jù)的鎖信息,需要SUPER權限
  --success-on-1146           Not increment error count and Warning instead of Critical in case of table doesn't exist
  --lock-all-tables           鎖全表,代替FLUSH TABLE WITH READ LOCK
  -U, --updated-since         Use Update_time to dump only tables updated in the last U days
  --trx-consistency-only      Transactional consistency only
  -h, --host                  The host to connect to
  -u, --user                  Username with privileges to run the dump
  -p, --password              User password
  -P, --port                  TCP/IP port to connect to
  -S, --socket                UNIX domain socket file to use for connection
  -t, --threads               備份執(zhí)行的線程數(shù),默認4個線程
  -C, --compress-protocol     在mysql連接上使用壓縮協(xié)議
  -V, --version               Show the program version and exit
  -v, --verbose               更多輸出, 0 = silent, 1 = errors, 2 = warnings, 3 = info, default 2
  
  
[root@test-5-69 all_20170215]# myloader --help
Application Options:
  -d, --directory                   備份文件所在的目錄
  -q, --queries-per-transaction     每個事務的query數(shù)量, 默認1000
  -o, --overwrite-tables            如果表存在則先刪除,使用該參數(shù),需要備份時候要備份表結構,不然還原會找不到表
  -B, --database                    指定需要還原的數(shù)據(jù)庫
  -s, --source-db                   還原的數(shù)據(jù)庫
  -e, --enable-binlog               啟用二進制日志恢復數(shù)據(jù)
  -h, --host                        The host to connect to
  -u, --user                        Username with privileges to run the dump
  -p, --password                    User password
  -P, --port                        TCP/IP port to connect to
  -S, --socket                      UNIX domain socket file to use for connection
  -t, --threads                     使用的線程數(shù)量,默認4
  -C, --compress-protocol           連接上使用壓縮協(xié)議
  -V, --version                     Show the program version and exit
  -v, --verbose                     更多輸出, 0 = silent, 1 = errors, 2 = warnings, 3 = info, default 2


#!/bin/sh
. /etc/profile


DIR='/my/bak/'
DATE=`date +%Y%m%d_%H-%M`


/usr/local/bin/mydumper -c -o $DIR$DATE


find $DIR -mindepth 1 -maxdepth 1 -type d -mtime +3 -exec rm -rf {} \;

感謝各位的閱讀!關于“mydumper有什么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI