当前位置: 首页 > 知识库问答 >
问题:

Mysqldump占用太多时间

蒙勇
2023-03-14

MySQLdump和上传过程花费了太长的时间(~8小时)来完成整个过程。

我正在将活动数据库转储到mysqldump.tar文件和几乎3GB。当我加载到新的数据库,它需要6-8小时来完成这个过程(上传到新的数据库)。

我要完成这个过程,推荐的解决方案是什么?

共有1个答案

漆雕欣德
2023-03-14

如果我没有理解错的话,您的主要问题是将数据加载到新数据库中是一个需要花费大量时间的步骤。除了阅读asdf在他的评论(“我如何优化一个大型数据库的mysqldump?”)中提供的链接之外,我还建议您一些事情:

  • 使用--disable-keys选项;这将在插入之前添加alter table your_table DISABLE keys,在插入完成之后添加alter table your_table ENABLE keys。使用此选项后,插入时间大约快30%
  • 如果可能,请使用--delayed-insert选项;whis将使用“normal”插入中的插入延迟
  • 如果可能,将不同表的数据转储到不同的文件中;这样您就可以同时上载它们。

有关更多信息,请参阅参考手册。

 类似资料:
  • 我正在我的SQL中使用一个查询。首先我用 我该怎么做才能让它快过2秒

  • 此select语句返回4k行。在我的应用程序中占用时间的是while循环。单循环就需要2到4分钟。关于如何优化它有什么想法吗? 不要太担心查询本身,因为它不会在查询响应上花费太多时间。

  • 我正在使用框架用iPhone摄像头捕捉视频,我的代码: 在之前,一切都很顺利,内存被限制在3M,但在之后,内存使用量每秒增加0.06M,几分钟后,应用程序会因为内存警告而崩溃。似乎占用了太多内存,并且可能存在内存泄漏问题。 那么如何减少内存使用量呢? iOS版本:7.1.1

  • 例如,我将-Xmx设置为40G。我希望我的java处理器不会使用超过40G。 我的程序与cms gc配合得很好。 但当我使用相同的内存(甚至多15%的内存)切换到G1 gc时。 它总是被杀人凶手杀死。 我发现了这样一篇文章:为什么我的Java进程比Xmx消耗更多的内存? 它表示: 所以我想知道,如何限制g1 gc使用的内存,以及为什么g1使用这么多额外的内存

  • 嗨,我对java编程还比较陌生。我编写的下面的程序似乎占用了很多内存(大约240 MB,正常吗?-我不这么认为!)请建议一些方法来优化这个程序,以便减少内存存储。 程序-- 代码-

  • 如何用QT3D画线?如何删除画好的线条?我发现下面的代码会占用太多的内存,如果你画很多线,尽管它可以工作。此方法只为绘制一条线分配了太多的存储空间,并且不会释放这些存储空间。如果你使用删除指针,那么它崩溃了。如何解决这个问题?