mysql大数据恢复_Mysql大型SQL文件快速恢复方案分享

本文分享了如何优化MySQL大数据恢复过程,包括使用--extended-insert参数进行批量插入,调整bulk_insert_buffer_size以提升MyISAM引擎的性能,关闭autocommit、unique_checks和foreign_key_checks以加速Innodb引擎的插入速度。经过优化,原本耗时40分钟的5GB数据库恢复时间缩短至16分钟。
摘要由CSDN通过智能技术生成

前言

在使用Mysql数据库的过程中,经常需要使用到备份和恢复数据库,最简单便捷的方法便是通过导出SQL数据文件和导入SQL数据文件来完成备份和恢复,但是随着项目的增长,数据量越来越大,每次恢复就成了一件很头疼的事情。

当我最近一次拉下项目中的5GB大小的数据库到本地进行恢复时,竟然需要耗时40-50分钟,想着日后的数据扩增,数据量越来越大,恢复成本也越来越高,于是便查阅了一些资料,可以通过以下设置来提高你的恢复效率.

1.更改备份参数

首先我们需要在备份数据库的时候,可以通过更改参数来提高我们的恢复效率.

mysqldump --extended-insert

mysqldump的--extended-insert参数表示批量插入,会将多个insert语句合并成一个语句,与没有开启-extended-insert的备份导入效率相差3-4倍.

使用--extended-insert=false导出的sql文件数据是这样的,每行一条insert语句,执行效率非常低下

d5f9f7e8a2d651f31b967bcf72e490d0.png

使用--extended-insert=true导出的表如下图这种,一个很长的insert语句,会进行批量插入。

c4f84b2dd544abeae286cdf5d75baa46.png

2.调整MYSQL快速插入参数

如果你的数据库储存引擎是MYISAM参数的话,可以将此参数设置到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值