更快的方式转储mysql

时间:2010-03-26 15:52:17

标签: mysql mysqldump

  

可能重复:
  Speeding up mysql dumps and imports

这可能是一个愚蠢的问题,但我只是在观看有关MySQL复制的截屏视频,并且我了解到主数据库不会将SQL发送到从属设备进行复制,它实际上是以二进制形式发送数据,这使得进口速度极快。我开始疑惑,“如果数据库可以导出和导入二进制文件,为什么mysqldumps / imports需要这么长时间?”有没有办法让mysql以类似的方式转储二进制数据库以加快这个过程?

4 个答案:

答案 0 :(得分:1)

相信这是mysqlhotcopy的工作方式:它锁定表格,然后复制实际的二进制数据(而不是创建自然语言INSERT语句)。

答案 1 :(得分:1)

如果使用MyISAM表,则只需复制数据目录中的文件(.MYD,.MYI& .frm)即可。对我来说,这是一个比InnoDB更大的优势,因为我经常需要移动大表。

建议在复制文件之前关闭mysql服务器。

答案 2 :(得分:0)

mysqldump具有必须以两种方式解析所有数据的开销:binary-> text然后text-> binary。考虑一个日期字段。在内部,它可能存储为32位整数(或实际使用的任何mysql),但转换为“2010-03-26 20:37:45”需要大量的计算。在导入时,还需要重建表索引的开销。

答案 3 :(得分:0)

签出http://www.mydumper.org - 多线程mysql备份/恢复,比mysqldump http://vbtechsupport.com/1695/

快3到10倍