MySQL 运维实战课
张新铭(俊达)
云掣科技资深数据库专家,前淘宝网、支付宝数据库专家
688 人已学习
新⼈⾸单¥59
MySQL 运维实战课
15
15
1.0x
00:00/00:00
登录|注册

10|MySQL如何快速导入导出数据?(下)

你好,我是俊达。
上一讲我介绍了 mysqldump 和 MySQL Shell 的 Dump 工具。使用 mysqldump 导出的,实际上是一个 SQL 文件,将这个文件直接拿到数据库中执行,就可以完成数据导入。MySQL Shell Dump 工具将建表语句、表中的数据导出到了不同的文件中,而且数据以文本文件的形式存储,需要使用 MySQL Shell 配套的 Load 工具,或者使用 Load Data 命令导入数据。
这一讲我们来学习 MySQL Shell Load 工具的使用方法,以及导出和导入单个表数据的一些其他方法。

MySQL Shell Load 工具

使用 load_dump 导入

MySQL Shell Dump 导出的数据,可以用 MySQL Shell Load 工具导入。load_dump 有两个参数,第一个参数是 Dump 文件的路径。第二个参数是一个字典,用来指定导入的各个选项。
util.load_dump("/data/backup/db_backups", {})
load_dump 默认会导入 Dump 路径下的所有文件。你可以使用 includeSchemas、includeTables 来指定需要导入的库和表,用 excludeSchemas、excludeTables 忽略指一些库和表。这里 includeTables 和 excludeTables 中表名的格式为"db_name.table_name"。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
  • 解释
  • 总结

1. MySQL Shell Load工具用于导入MySQL Shell Dump导出的数据,可通过设置参数指定需要导入的库和表,以及是否导入表结构和数据。 2. 在使用load_dump导入数据时,需要注意目标库中是否已存在同名表,可以通过设置excludeTables或ignoreExistingObjects来避免导入冲突。 3. 使用SELECT INTO OUTFILE可将数据导出到文本文件,可指定列分割符、行分割符、转义符,适用于导出数据到CSV格式。 4. MySQL Shell提供了export_table功能,可将表的数据导出到本地文件中,通过指定参数来控制导出文件的格式。 5. 数据导入可使用LOAD DATA命令,也可在MySQL客户端中直接使用LOAD DATA命令来导入数据。 6. 在导入数据时,需注意目标库的local_infile设置,以及处理同名表的方式。 7. 导出数据时,需考虑特殊字符的转义处理,以确保导出的文件格式正确。 8. 导入数据的进度会记录在progressFile文件中,可通过设置resetProgress来重新导入数据。 9. 在使用SELECT INTO OUTFILE导出数据时,需注意数据库参数secure_file_priv的设置和文件路径的选择。 10. 导出数据的格式需根据实际需求选择合适的方法,如CSV格式或其他文本格式。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《MySQL 运维实战课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(2)

  • 最新
  • 精选
  • 123
    思考题: 可以通过Oracle工具多线程导出整个数据库实例,设置开启事务,短暂的获取全局锁后进行快照导出,将数据导出到指定目录中,并且每个库表的ddl和数据都是分开存放,方便后面的并行导入; 导入过程中使用import_table,指定线程数,具体的线程数据还是要根据目标数据库的并发写性能来确定,尽可能的缩短时间; 对于导出导入过程中的增量数据,可以在导出开始的时候记录binlog位置或GTID的全局事务id,导入增量数据的时候可以通过binlog位置和GTID来恢复增量数据,且导出数据的过程尽量在用户量少的时间操作,确保增量的数据尽可能少,同时来减少导入增量数据时业务库的停机时间;
    2024-09-09归属地:浙江
  • Geek_0126
    异构数据源之间的同步问题,就要借助同步工具了,例如DataX、cloudcanal等,可以先进行全量迁移,然后再开启增量同步。不过其中需要注意的细节太多了,比如数据类型及各种数据库对象之间的转换。
    2024-09-09归属地:浙江
收起评论
显示
设置
留言
2
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部