插入数据优化 ---大批量数据插入建议使用load

一.insert优化

1.批量插入

2.手动提交事务

3.主键顺序插入

二.大批量插入数据

如果一次性需要插入大批量数据,使用insert语句插入性能较低,此时可以使用MySQL数据库提供的load指令进行插入。操作如下

1.客户端连接服务端时,加入参数 --local-infine

sql 复制代码
mysql --local-infine -u  root -p

2.设置全局参数local_infile为1,开启从本地加载文件导入数据的开关

sql 复制代码
set global local_infine=1;

3.执行load指令将准备好的数据,加载到表结构中

sql 复制代码
load data local infile '/root/sql.log'  into table `tb_user` fileds terminated by',' lines terminated by`\n`;

大批量插入数据建议使用load指令

主键顺序插入性能高于乱序插入

相关推荐
l1t6 分钟前
DuckDB 各版本 tpch 10 查询时间对比
数据库
Nebula_g9 分钟前
SpringBoot企业级实战项目—云禾外卖—SpringBoot常用注解解析
java·网络·数据库·spring boot·后端·spring·javase
雨落在了我的手上13 分钟前
MySQL数据库基础(14):JDBC编程
数据库·mysql
草莓熊Lotso16 分钟前
【C++ 基于微服务的即时通讯系统】Elasticsearch 从安装到 C++ 客户端二次封装全落地
linux·网络·数据库·c++·elasticsearch·微服务
kyle~39 分钟前
DTO --- 数据封装
数据库·oracle·前后端
Nebula_g1 小时前
云禾外卖补充—项目整体后端运行逻辑-对流程的更深层次理解
java·开发语言·网络·数据库·状态模式·javase
太理摆烂哥1 小时前
MySQL数据类型
数据库·mysql
程序员小孔.1 小时前
基于 SpringBoot + UniApp + Vue 的家政服务系统设计与实现
前端·数据库·spring boot·python·docker·微信小程序
草莓熊Lotso5 小时前
【C++ 基于微服务的即时通讯系统】etcd + brpc 从安装到服务注册发现全链路实战
网络·数据库·c++·redis·微服务·etcd
Lethehong10 小时前
Oracle 加个字段,目标库就报错?KFS 用“先拆后组“打通异构 DDL
数据库·oracle