mydumper安装笔记

author author     2022-07-30     708

关键词:

参考:http://www.tuicool.com/articles/2eAVVvN

 

mydumper备份的速度、myloader的恢复速度,比mysql自己的工具执行速度快很多,大大减少业务的处理时间。

 

 

# yum install glib2-develmysql-devel zlib-devel pcre-devel -y
# wget https://launchpadlibrarian.net/225370879/mydumper-0.9.1.tar.gz
# cmake ./
#make && make install

mydumper参数介绍:

 -B, --database             Database to dump
  -T,--tables-list           Comma delimitedtable list to dump (does not exclude regex option)
 -o, --outputdir            Directory to output files to
  -s,--statement-size        Attempted size ofINSERT statement in bytes, default 1000000
  -r,--rows                  Try to splittables into chunks of this many rows. This option turns off --chunk-filesize
  -F,--chunk-filesize        Split tables intochunks of this output file size. This value is in MB
  -c,--compress              Compress outputfiles
  -e,--build-empty-files     Build dump fileseven if no data available from table
  -x,--regex                 Regularexpression for ‘db.table‘ matching
  -i,--ignore-engines        Comma delimitedlist of storage engines to ignore
 -m, --no-schemas            Do notdump table schemas with the data
 -d, --no-data               Do notdump table data
  -G,--triggers              Dump triggers
  -E,--events                Dump events
  -R,--routines              Dump storedprocedures and functions
  -k,--no-locks              Do not executethe temporary shared read lock.  WARNING:This will cause inconsistent backups
 --less-locking             Minimize locking time on InnoDB tables.
  -l,--long-query-guard      Set long querytimer in seconds, default 60
  -K,--kill-long-queries     Kill long runningqueries (instead of aborting)
 -D, --daemon                Enabledaemon mode
 -I, --snapshot-interval    Interval between each dump snapshot (in minutes), requires --daemon, default60
  -L,--logfile               Log file name touse, by default stdout is used
 --tz-utc                    SETTIME_ZONE=‘+00:00‘ at top of dump to allow dumping of TIMESTAMP data when aserver has data in different time zones or data is being moved between serverswith different time zones, defaults to on use --skip-tz-utc to disable.
 --skip-tz-utc               
 --use-savepoints            Usesavepoints to reduce metadata locking issues, needs SUPER privilege
 --success-on-1146           Not increment error count and Warning insteadof Critical in case of table doesn‘t exist
 --lock-all-tables           UseLOCK TABLE for all, instead of FTWRL
  -U,--updated-since         Use Update_timeto dump only tables updated in the last U days
  --trx-consistency-only      Transactional consistency only
  -h,--host                  The host toconnect to
  -u,--user                  Username withprivileges to run the dump
  -p,--password              User password
  -P,--port                  TCP/IP port toconnect to
  -S,--socket                UNIX domainsocket file to use for connection
 -t, --threads               Numberof threads to use, default 4
  -C,--compress-protocol     Use compressionon the MySQL connection
  -V,--version               Show the programversion and exit
  -v,--verbose               Verbosity ofoutput, 0 = silent, 1 = errors, 2 = warnings, 3 = info, default 2

 

myloader参数介绍:

  -d,--directory                   Directoryof the dump to import导入备份目录
  -q,--queries-per-transaction     Number ofqueries per transaction, default 1000
  -o,--overwrite-tables            Drop tablesif they already exist如果表存在删除表
  -B,--database                    Analternative database to restore into需要还原的库
  -s,--source-db                   Database torestore
  -e,--enable-binlog               Enablebinary logging of the restore data
  -h,--host                        The host toconnect to
  -u,--user                        Usernamewith privileges to run the dump
  -p,--password                    Userpassword
  -P,--port                        TCP/IP portto connect to
  -S,--socket                      UNIX domainsocket file to use for connection
  -t,--threads                     Number ofthreads to use, default 4使用的线程数量,默认4
 
  -C,--compress-protocol           Usecompression on the MySQL connection
  -V,--version                     Show theprogram version and exit
  -v,--verbose                     Verbosityof output, 0 = silent, 1 = errors, 2 = warnings, 3 = info, default 2

 

mydumper输出文件说明:

metadata:元数据,记录备份开始和结束时间,以及binlog日志文件位置。
table data:每个表一个文件
table schemas:表结构文件
daemon mode:在这个模式下,有五个目录0,1,binlogs,binlog_snapshot,last_dump。
备份目录是0和1,间隔备份,如果mydumper因某种原因失败而仍然有一个好的快照,
当快照完成后,last_dump指向该备份。

 

mydumper用例

备份hellodb数据库到当前目录下

# mydumper -uroot -proot -B hellodb -o ./
# ll  是每个表单独备份的

技术分享

 
# cat metadata  可以看到

技术分享

以守护进程方式每30分钟备份一次
# mydumper -uroot -proot -B hellodb-o /home/data/bak -D -I 30
 

数据库的还原覆盖操作
# myloader -o -B hellodb -o -d/home/data/bak/last_dump


最后,附上一个mysqldump和mydumper的速度对比图。

[[email protected] ~]# time mysqldump -uroot -proot -B Mobile > aa.sql
real     0m1.863s
user     0m1.571s
sys      0m0.164s
[[email protected] ~]# time mydumper -u root -p root -B Mobile -o /db/backup/mobile/ 
real     0m0.851s
user     0m0.735s
sys      0m0.101s

很明显地可以看出mydumper的效率比mysqldump要高很多。

mydumper安装及使用(代码片段)

mydumper官网:https://launchpad.net/mydumper安装方式:  1、yuminstallglib2-develmysql-develzlib-develpcre-developenssl-devel (现在安装这些依赖)  2、cmake.  (解压编译tarxvfmydumper-0.9.1.tar.gz)  3、make&& 查看详情

mydumper安装(代码片段)

mydumper安装编译安装下载安装包上传软件解压安装依赖包cmake编译安装验证缺少库文件测试总结rpm包安装下载安装包安装测试遗留问题mydumper是社区开源产品,支持并行导出,导入。功能单一,当我们在进行逻辑备份时... 查看详情

mydumper安装(代码片段)

mydumper安装编译安装下载安装包上传软件解压安装依赖包cmake编译安装验证缺少库文件测试总结rpm包安装下载安装包安装测试遗留问题mydumper是社区开源产品,支持并行导出,导入。功能单一,当我们在进行逻辑备份时... 查看详情

mydumper安装(代码片段)

mydumper安装编译安装下载安装包上传软件解压安装依赖包cmake编译安装验证缺少库文件测试总结rpm包安装下载安装包安装测试遗留问题mydumper是社区开源产品,支持并行导出,导入。功能单一,当我们在进行逻辑备份时... 查看详情

my22_mydumper注意事项

1.mydumper的安装依赖于mysql软件,要使用mydumper则服务器上必须先安装mysql2. mydumper安装时会使用mysql软件的动态链接库文件,如果服务器上mysql版本发生了变化,那么mydumper也需要重新安装3.使用mydumper最好为不同的数据库提供不... 查看详情

浅析mydumper(代码片段)

...中一个表,做不到(所有的表都在一个文件里)所以推荐使用mydumper备份备份并行,基于行,即使一张表也能并行,好强呐恢复也是并行恢复的时候可以只恢复指定表完美(*^__^*)Ⅱ、安装yuminstall-yglib2-develmysql-develzlib-develpcre-develope 查看详情

mydumper介绍

Mydumper是一个针对MySQL和Drizzle的高性能多线程备份和恢复工具。开发人员主要来自MySQL,Facebook,SkySQL公司。目前已经在一些线上使用了Mydumper。一、Mydumper主要特性:  -执行并行(速度快)、性能提升  -易于管理  -一致性:在... 查看详情

20180207mydumper备份流程

mydumper备份流程mydumper和mysqldump比对mysqldump备份是属于单进程备份,mydumper备份属于多线程备份。mysqldump备份innodb引擎表和非innodb引擎表的时候使用一致性备份的时候备份的非innodb引擎表的数据可能会和showmasterstatus获取得到binlog... 查看详情

mydumper备份工具(代码片段)

...velzlibgcc-c++gcccmakecd/usr/local/src/&&wgethttps://launchpad.net/mydumper/0.9/0.9.1/+download/mydumper-0.9.1.tar.gztarzxfmydumper-0.9.1.tar.gzcdmydumper-0.9.1/cmake.makemakeinstallmydumper参数解释-B,--database要备份的数据库,不指定则备份所有库-T,--tables-list需要备... 查看详情

mydumper备库备份注意事项(代码片段)

1、备库备份报错mydumper-uroot-pxxxx--trx-consistency-only-Btest-Tt1,t2-o/backup/mysql/`date+%F`**(mydumper:19792):WARNING**:Usingtrx_consistency_only,binlogcoordinateswillnotbeaccurateifyouarewritingtonontransactionaltables.**(mydumper:19792):CRITICAL**:TherearequeriesinPROCESSLISTrunninglong... 查看详情

mydumper-0.9.1

ansible脚本ansible -i /etc/ansible/db/scdb 主 -m shell -a '/home/mysqlbak/mydumper/backup.sh'ansible -i /etc/ansible/db/scdb 主 -m synch 查看详情

备份工具mydumper

Mydumper主要特性:是一个针对MySQL的高性能多线程备份和恢复工具,开发人员主要来自MySQL,Facebook,SkySQL公司。特性:1:轻量级C语言写的2:执行速度比mysqldump快10倍3:事务性和非事务性表一致的快照(适用于0.2.2以上版本)4:快速的... 查看详情

mydumper工作原理解析(代码片段)

1、简介逻辑备份小钢炮--mydumper是针对MySQL的高性能多线程备份工具。该工具是由MySQL、Facebook、skysql公司的开发人员一起开发的。是由轻量级C语言开发;执行速度据说比mysqldump快10倍;支持事务和非事务表的一致性备份;还支持... 查看详情

mydumper备份原理和使用方法

...,没有一个并行的机,这就使得它无法迅速的备份数据。mydumper作为一个实用工具,能够良好支持多线程工作,可以并行的多线程的从表中读入数据并同时写到不同的文件里,这使得它在处理速度方面快于传统的mysqldump。其特征... 查看详情

使用mysqldump或mydumper配置mysql主从复制(代码片段)

1.使用mysqldumpcatdump_and_replication.sh#!/bin/bashsource~/.bashrcmysql-uroot-p123456-S/data/3306/mysqldata/mysql.sock-Ddb1-e"setglobalsql_log_bin=0;altertablet1dropprimarykey,dropindexIndex_1, 查看详情

使用mysqldump或mydumper配置mysql主从复制(代码片段)

1.使用mysqldumpcatdump_and_replication.sh#!/bin/bashsource~/.bashrcmysql-uroot-p123456-S/data/3306/mysqldata/mysql.sock-Ddb1-e"setglobalsql_log_bin=0;altertablet1dropprimarykey,dropindexIndex_1, 查看详情

使用mysqldump或mydumper配置mysql主从复制(代码片段)

1.使用mysqldumpcatdump_and_replication.sh#!/bin/bashsource~/.bashrcmysql-uroot-p123456-S/data/3306/mysqldata/mysql.sock-Ddb1-e"setglobalsql_log_bin=0;altertablet1dropprimarykey,dropindexIndex_1, 查看详情

my21_mydumper与myloader使用

...l`.`bootrap` mysql-uautomng-prootroot-h127.0.0.1mkdir-p/data/tmp/tablemydumper-uautomng-prootroot-h127.0.0.1-P3306-Bvodb-Ttest-e-o/data/tmp/tablemysql>select*fromtest;+------+--------+---------+------------------------+---------------------+|tid|tname|test_id|tvalue|CreateTime|+------+------... 查看详情