mysql 导入大文件

270 阅读1分钟

最近在使用 mysql 命令行导入一个 3G 的大文件,直接用的 source filename 结果从早上9点到下午2点还没弄完。在网上搜了下,重新删库,重新导入,结果几分钟就好了,在此记录下:

导入前

-- 设置 innodb_buffer_pool_size
SET GLOBAL innodb_buffer_pool_size=1024*1024*1024*2; -- 2GB, 根据你的实际内存情况调整

-- 关闭唯一性检查
SET unique_checks=0;

-- 关闭自动提交
SET autocommit=0;

-- 导入数据
SOURCE h:\hms_data.sql;
-- 提交事务
COMMIT;

导入完成后,恢复设置:

-- 恢复默认设置
SET GLOBAL innodb_buffer_pool_size=DEFAULT;
SET unique_checks=1;
SET autocommit=1;