Mydumper - MySQL数据库备份工具

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介:

Mydumper - MySQL数据库备份工具

Mydumper 是 MySQL 数据库服务器备份工具,它比 MySQL 自带的 mysqldump 快很多。它还有在转储的同时获取远程服务器二进制日志文件的能力。

Mydumper 的优势

  • 并行能力 (因此有高速度) 和性能 (高效的代码避免了耗费 CPU 处理能力的字符集转换过程)
  • 更容易管理输出 (每个表都对应独立的文件,转储元数据等,便于查看/解析数据)
  • 一致性 :跨线程维护快照, 提供精确的主从日志定位等。
  • 可管理性 : 支持用 PCRE 来包含/排除指定的数据库和表(LCTT译注:PCRE,Perl Compatible Regular Expression,Perl兼容正则表达式)

在Ubuntu上安装 mydumper

打开终端运行以下命令

 
 
  1. sudo apt-get install mydumper

使用 Mydumper

语法

 
 
  1. mydumper [options]

应用程序选项:

  • -B, --database 要转储的数据库
  • -T, --tables-list 逗号分隔的转储表列表(不会被正则表达式排除)
  • -o, --outputdir 保存输出文件的目录
  • -s, --statement-size 插入语句的字节大小, 默认是1000000个字节
  • -r, --rows 把表按行数切块
  • -c, --compress 压缩输出文件
  • -e, --build-empty-files 空表也输出文件
  • -x, --regex 匹配‘db.table’的正则表达式
  • -i, --ignore-engines 以逗号分隔的被忽略的存储引擎列表
  • -m, --no-schemas 不转储表架构
  • -k, --no-locks 不执行临时共享读锁。警告: 这会导致备份的不一致性
  • -l, --long-query-guard 设置长查询的计时器秒数,默认是60秒
  • --kill-long-queries 杀死长查询 (而不是退出程序)
  • -b, --binlogs 获取二进制日志文件快照并转储数据
  • -D, --daemon 开启守护进程模式
  • -I, --snapshot-interval 每个转储快照之间的间隔时间(分钟), 需要开启 --daemon, 默认是60分钟
  • -L, --logfile 日志文件的名字,默认是stdout
  • -h, --host 要连接的主机
  • -u, --user 有转储权限的用户名
  • -p, --password 用户密码
  • -P, --port 连接的TCP/IP端口
  • -S, --socket 用于连接的Unix套接字文件
  • -t, --threads 使用的线程数,默认是4
  • -C, --compress-protocol 在MySQL连接上使用压缩
  • -V, --version 查看程序版本号
  • -v, --verbose 输出信息的等级, 0 = silent, 1 = errors, 2 = warnings, 3 = info, 默认是2

Mydumper 例子

 
 
  1. mydumper \
  2. --database=$DB_NAME \
  3. --host=$DB_HOST \
  4. --user=$DB_USER \
  5. --password=$DB_PASS \
  6. --outputdir=$DB_DUMP \
  7. --rows=500000 \
  8. --compress \
  9. --build-empty-files \
  10. --threads=2 \
  11. --compress-protocol

Mydumper 输出数据的说明

Mydumper 不直接指定输出的文件,而是输出到文件夹的文件中。--outputdir 选项指定要使用的目录名称。

输出分为两部分

表结构

对数据库中的每个表,创建一个包含 CREATE TABLE 语句的文件。文件命名为:

dbname.tablename-schema.sql.gz

数据

每个表名跟着按 --rows 参数所切块的数量, 创建文件名字为:

dbname.tablename.0000n.sql.gz

"n"从0开始.

你可以使用Myloader恢复这些备份

 
 
  1. myloader \
  2. --database=$DB_NAME \
  3. --directory=$DB_DUMP \
  4. --queries-per-transaction=50000 \
  5. --threads=10 \
  6. --compress-protocol \
  7. --verbose=3

原文发布时间:2015-04-25

本文来自云栖合作伙伴“linux中国”
目录
相关文章
|
15天前
|
SQL 存储 关系型数据库
数据库开发之图形化工具以及表操作的详细解析
数据库开发之图形化工具以及表操作的详细解析
29 0
|
28天前
|
关系型数据库 MySQL Shell
shell学习(十七) 【mysql脚本备份】
shell学习(十七) 【mysql脚本备份】
11 0
|
7天前
|
监控 关系型数据库 MySQL
初体验:数据库监控、管理和可观测性工具(PMM)
Percona Monitoring and Management (PMM) 是一个开源工具,用于监控MySQL、PostgreSQL和MongoDB的性能。它提供实时监控、数据可视化、故障排除和管理功能,支持本地和云端数据库。要安装PMM,首先需安装Docker,然后通过提供的脚本部署PMM服务器和客户端。在MySQL服务器上创建PMM用户后,使用`pmm-admin`命令添加数据库。访问PMM的HTTPS网址(默认用户名和密码为admin)进行配置。本文还包含了安装Docker和PMM的命令行步骤。
初体验:数据库监控、管理和可观测性工具(PMM)
|
9天前
|
关系型数据库 MySQL Shell
备份 MySQL 的 shell 脚本(mysqldump版本)
【4月更文挑战第28天】
22 0
|
1天前
|
关系型数据库 MySQL 数据管理
MySQL通过 bin-log 恢复从备份点到灾难点之间数据
MySQL通过 bin-log 恢复从备份点到灾难点之间数据
|
1天前
|
存储 安全 关系型数据库
MySQL中使用percona-xtrabackup工具 三种备份及恢复 (超详细教程)
MySQL中使用percona-xtrabackup工具 三种备份及恢复 (超详细教程)
|
1天前
|
存储 SQL Oracle
关系型数据库的备份和恢复
关系型数据库的备份和恢复是确保数据安全性和完整性的重要手段。需要根据具体的需求和场景选择合适的备份和恢复方法,并遵循相关的注意事项来确保备份和恢复的成功。
24 2
|
6天前
|
SQL 关系型数据库 MySQL
【MySQL-3】图形化界面工具DataGrip安装&配置&使用
【MySQL-3】图形化界面工具DataGrip安装&配置&使用
|
7天前
|
弹性计算 关系型数据库 MySQL
|
8天前
|
SQL NoSQL 关系型数据库
【好用】Star超36.8k,一个的免费通用数据库管理工具
关于数据库管理工具,大家可能都在用SQLyog、Navicat、MySQL-Front、SQL Studio、MySQL Workbench等等,这些管理工具不是不好用,就是要变魔术才可以用,今天 V 哥给大家推荐一个即好用,又免费的可视化通用数据库管理工具,让你再也不用偷偷摸摸的了,光明正大放心用,真心好用。