MySql快速导入大SQL文件

MySql安装位置可通过which mysql或whereis mysql找到

修改mysql配置文件my.ini,通常在/etc下

  1. 对于MyISAM,调整系统参数:bulk_insert_buffer_size(至少单个文件大小的2倍以上)
  2. 对于InnoDB,调整系统参数:innodb_log_buffer_size(至少单个文件大小的2倍以上,导入完成后可以改回默认的8M,注意不是innodb_buffer_pool_size。)
  3. 除主键外,删除其他索引,导入完成后重建索引。
  4. 关闭自动提交autocommit=0。(请勿用set global autocommit=1;命令来关闭,否则整个MySQL系统都会停止自动commitinnodb log buffer很快就会爆满,5和6项也请仅在会话中有效,正确做法请往下看
  5. 关闭唯一索引检查unique_checks=0。(关闭了这一项会影响on duplicate key update的效果)
  6. 关闭外键检查foreign_key_checks=0
  7. insert值写在一条语句内,如:INSERT INTO yourtable VALUES (1,2), (5,5), ...;
  8. 有自增列的,设置:innodb_autoinc_lock_mode的值为2
  9. my.inimax_allowed_packetMySQL 8.0单个packet可以允许的最大值是1GB,可以根据导入SQL文件大小进行修改修改后可通过show VARIABLES like '%max_allowed_packet%';查看

from:https://www.awaimai.com/2382.html

 

 

 

抱歉,只有登录并在本文发表评论才能阅读隐藏内容
点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注