mysql导入大量数据
巨量数据导入时,使用任何外部数据库连接工具都慢似乌龟,因此在导入巨量数据时需要对数据库进行一些设置。
在默认情况下,数据库开启了日志记录、事务自动提交等一些配置,当去执行某个sql文件时,事务会自动提交,日志会进行记录,也就是说每操作一次,数据库将执行一遍上述操作,这样就大大拖延了导入的速度。因此我们需要暂时关闭这些配置,提高导入速度。
前言:
查看mysql日志是否开启 :show variables like ‘log_%’;
log_bin对应的值是OFF,代表binlog没有开启。
查看mysql事务自动提交是否开启 :show variables like ‘autocommit%’;
1、关闭mysql服务
2、my.ini文件添加如下配置
关闭mysql的bin_log
[mysqld]
skip-log-bin
开启mysql的bin_log:移除配置文件中的 ‘ skip-log-bin ’
3、重启mysql服务
4、进入mysql
mysql -u root -p123456
5、关闭事务自动提交
set autocommit=0;
6、切换数据库
use 数据库名
7、开启事务
start TRANSACTION;
8、引入SQL文件
使用source命令导入sql数据
source sql文件路径
注意:文件路径分隔符为 ‘ / ’
9、提交事务
commit;
还没有评论,来说两句吧...