MySQL之多线程迁移工具MyDumper使用指南

吾爱主题 阅读:177 2023-11-03 16:07:00 评论:0

操作环境:CentOS 7

MySQL版本:5.7.42

注意:在执行任何数据库操作之前,请确保您拥有必要的权限和备份数据的合法性!

 

一、数据迁移工具mydumper的原理及特性

1.1 大型数据库备份

mydumper 被设计用来备份大型的 MySQL 数据库,特别是当传统的 mysqldump 因为性能或时间限制而不适用时。它可以更快速地备份大量数据。

1.2 并行备份

mydumper 采用多线程并行备份数据,这意味着可以同时备份多个表,提高了备份效率。

1.3 逻辑备份

与物理备份工具不同,mydumper 执行逻辑备份,它导出数据库中的数据和结构(表、视图、存储过程等)而不是直接复制数据库文件。这使得备份文件能够跨不同版本的 MySQL 服务器进行还原,因为它们是 SQL 语句的文本文件。

1.4 不锁表备份

mydumper 支持使用 --lock-all-tables 选项,它只会在备份的开始和结束时锁定表,而在备份过程中允许其他操作,减少了对生产环境的干扰。

1.5 开源工具

mydumper 是一个开源工具,可以自由使用和定制,适用于各种 MySQL 数据库备份需求。

二、数据的备份及还原使用

2.1 安装mydumper工具

注:安装dumper的方式有很多种,大家可以根据实际情况,选择需要的版本进行安装!

github上直接下载rpm包进行安装。

执行下载wget https://github.com/mydumper/mydumper/releases/download/v0.13.1-2/mydumper-0.13.1-2.el7.x86_64.rpm

图片

下载完成后,执行安装:

rpm -ivh mydumper-0.13.1-2.el7.x86_64.rpm

此mydunmper版本为0.13.1:

图片

安装完成后会生成两个二进制文件 mydumper 和 myloader 位于 /usr/bin/mydumper 目录下:

图片

至此,mydumper安装完成!

2.2 使用mydumper

在使用之前我们可以运行mydumper --help查看选项参数(具体参数大家可以前往官网查看):

图片

如需备份abc库内的test_table表,可以使用如下命令:

mydumper -S 指定套接字文件 -u 用户名 -p 密码 -B 库名 -T 表名 -t 线程数 -o 备份目录 来进行备份(大家可根据自己的需求合理使用上述参数)

mydumper -S /tmp/mysql.sock -u root -p lhw -B abc -T abc.test_table -t 4 -o /tmp/backup

图片

备份执行成功,已在/tmp/backup下生成备份文件。

以下是各文件的作用:

  • abc-schema-create.sql——文件是用于创建数据库的sql脚本
  • abc.test_table.00000.sql——存储表数据
  • abc.test_table-metadata——存储元数据
  • abc.test_table-schema.sql——存储表结构
  • metadate——代表备份时的重要信息

后续导入备份数据可以运行 myloader --help 命令来查看myloader的完整文档以获取更多信息。

例:

myloader -S /tmp/mysql.sock -u root -p lhw -B abc -d /tmp/backup

总 结:

mydumper 是一个功能强大的多线程迁移工具,用于备份 MySQL 数据库。通过逻辑备份,增量备份等特性,它提供了高度灵活性,并且易于使用。遵循上述步骤,你可以轻松地备份和还原 MySQL 数据库,以确保数据的安全性和可恢复性。

原文地址:https://mp.weixin.qq.com/s/op5uZB9d4UMAW7LLW4SnoQ

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容