Mysql数据库备份工具有哪些?

如题所述

1. mysqldump: 最早,也是最成熟的逻辑备份工具,是 MySQL 原生的用来备份整个数据库实例、单个数据库、单张表的逻辑备份工具, 上手简单,学习成本几乎为 0。备份简单,恢复也简单。

比如导出单个数据库 ytt: mysqldump ytt > /tmp/ytt.sql;

恢复也非常简单:mysql < /tmp/ytt.sql

缺点是备份速度慢。在整个备份过程中,是单线程运行;备份出来的数据集要恢复的话同样也是单线程运行,恢复速度也慢。除非对同一时刻的所有表单独备份出来,自己写额外脚本进行多线程恢复。

2. mysqlpump:MySQL 5.7 GA 后推出的 mysqldump工具的增强版。可以对同一个数据集多个线程并发备份,备份速度很快。

其他缺点和 mysqldump 一样。

3. MySQL Shell UTIL 对象附带的备份工具:随 MySQL 8.0.21 最新版本捆绑发布,自带多线程备份以及多线程恢复功能, 可以直接替代 mysqldump/mysqlpump。

    dump_instance/dumpInstance 用来多线程备份 MySQL 整个单机实例

    dump_schemas/dumpSchemas 用来多线程备份 MySQL 单个数据库

    load_dump/loadDump 用来多线程恢复之前两个工具导出的数据集文件

    MySQL Shell UTIL 备份恢复工具具备如下特性:

    1. 压缩导出(默认压缩算法 zstd)

    2. 数据集分块导出,每块 32M

    3. 默认导出存储过程、存储函数、触发器、事件、用户、视图

    4. 默认 4 个线程导出

    5. 默认进度展示

    6. 默认字符集 utf8mb4

    7. 默认开启一致性导出

    8. 默认表,视图等定义导出为 SQL 语句

    9. 默认数据导出为 TSV 格式数据

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-04-17

在全球大数据暴增的趋势下,市场上以Oracle/Mysql为主的数据库的数据量也越来越大。当数据呈指数增长时,数据备份时间也将随着数据量的增长而加长,这样就很难实现高效的数据保护。对于超大型Mysql/Oracle数据库的保护一直是业界的难题,尤其是如何在较短的时间内,完成数据的备份和有效性验证。UcacheBankup产品凭借多年的数据保护经验,研究了一套高效的Oracle/Mysql数据库保护技术。

数据库备份技术
传统的数据库备份、磁带备份没有全局位图信息,需要在备份时扫描所有数据,即使数据没有发生变化,这就导致在增量备份时,数据块的扫描时间,将成为最耗时的操作。尤其是当用户的Oracle/Mysql/mysql数据库存在大量的静态数据时,在增加了整个系统负荷的同时,还降低了备份效率

而在Ucache Oracle/Mysql 保护模式下,在备份开始时,就建立了所有数据块的位图信息,且支持记录数据块变化时的相应位图信息。因此,在增量备份时,根据位图信息定位变化数据块,直接备份变化的数据块。与此同时,Ucache 备份 Oracle/Mysql 支持第三代重复数据删除技术,不仅能够从源端进行冗余数据删除,还支持任务级别的重删,可按照不同类型的备份任务而在指定范围内识别冗余数据。







相对于传统的全库扫描,Ucache备份方式不仅在缩短备份时间上拥有显著成效,更在数据的可恢复性上有了更好的保证。在当前数据不断膨胀的趋势下,这种备份方式,极大地提升了备份效率和数据安全性,解决了大型Oracle/Mysql数据库的数据保护难题。

UcaheBackup采用多通道并行的保护模式,并辅以参数方面的优化,可以成倍提升传输速度和存储的读写性能来提升备份恢复性能。在数据呈指数增长的时候,我们也能够快速的完成数据的备份,以及恢复的验证工作。

本回答被提问者采纳
相似回答