mysql5.5 导入最大值_mysql导入超大sql文件

mysql导入超大sql文件

在网上找了个2017年行政区划的sql文件,需要导入到本地mysql库中,同事使用navicat导入的时候直接卡死了,该SQL文件差不多112MB大小。通过百度、google找到很多办法,有的博客提供的方法还有坑,最终通过实践找到了一个好用而且可行的办法:

注意:本操作环境为:windows10、mysql5.7.17版本,linux平台步骤基本一样。

1)使用cmd进入mysql并切换到对应的库:

mysql –uroot –p123456

use bart;

2)关闭sql_log_bin、autocommit、max_allowed_packet选项:

show VARIABLES like '%sql_log_bin%'; # 查看参数值

show VARIABLES like '%autocommit%';

set sql_log_bin=0; # 关闭日志

set autocommit=0; # 关闭 autocommit 自动提交模式

# 查看默认是 4194304 = 4M ,我们修改为 400M 即 419430400

show VARIABLES like '%max_allowed_packet%';

# 注意要使用 global 设置否则不成功

set global max_allowed_packet= 419430400;

3)手动开启事务,并导入大SQL文件:

# 手动开启事务并导入

start transaction;

source C:/Users/Bart/Desktop/cnarea20171031/cnarea20171031.sql

commit;

4)恢复默认参数:

# 恢复旧的配置

set sql_log_bin=1; # 打开日志

set autocommit=1; # 打开 autocommit 自动提交模式

set global max_allowed_packet= 4194304; # 修改为默认值

性能爆强 112M 的 70W 数据使用了 8.37 秒就导入完成!!!

参考:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值