- 插入数据时的优化
- 主键优化
- order by优化
- group by优化
- limit优化
- count优化
- update优化
1.插入数据时的优化
批量插入数据时最好最多别超过一千条,如果一次批量插入几万条数据,可以将其分割成多条insert语句进行插入。
mysql的事务提交方式是默认自动提交的,当执行完一条insert语句后事务就提交了,再次执行一条insert,执行之前开启事务,执行完毕之后自动提交事务,这时候就会涉及到事务的频繁开启与事务的提交,所以建议手动控制事务。执行insert语句之前先开启事务,等多条insert语句执行完毕以后,统一提交事务。
主键顺序插入。

1.1 大批量插入数据
大批量插入数据,建议使用load指令,而不建议采用insert指令。

mysql查看参数的语法格式:
select @@local--infile;

开启local_infile的开关,此时数据就可以通过load指令加载进来了。
set global local_infile = 1;

将数据文件上传,并使用load指令加载到mysql数据库表中
load data local infile '/root/load_user_100w_sort.sql' into table tb_user fields terminated by ',' lines terminated by '\n';

将100w的数据量加载到mysql中所耗时间为大概17s,如果采用insert语句去加载数据,大概需要耗时十多分钟,这个load加载数据的效率提升还是十分明显的。












![[C初阶]循环和分支语句](https://img-blog.csdnimg.cn/6963e0bd9ece4b559e1020e5d62d49e6.png)


![[23] HeadSculpt: Crafting 3D Head Avatars with Text](https://img-blog.csdnimg.cn/420a4790065d45aeac718f711c9f0a9d.png)




![[数据结构 -- C语言] 二叉树(BinaryTree)](https://img-blog.csdnimg.cn/img_convert/16ef77623b844f2f27aa52df75169f18.png)