记录Mysql学习笔记,大部分图片来自黑马程序员MySQL教程。
插入数据
insert优化
插入多条数据的时候,可以按以下方式优化。
- 批量插入时,一次性插入的数据建议不超过1000条。
- MySQL默认自动提交事务,所以插入操作会频繁地开启和提交事务,建议手动提交。
- 主键顺序插入性能高于乱序插入。
load
- load 顺序插入的性能也高于乱序插入。
主键优化
- 主键乱序插入,会出现页分裂现象。
- 如果主键长度比较长,由于二级索引(一张表会有很多个)叶子节点存放主键,导致占用大量磁盘空间。
order by优化
- 若排序过程中缓冲区占满了,会在磁盘文件中进行排序,性能很低。
group by优化
- 分组操作的索引也需要满足最左前缀法则。
limit优化
在大数据情况下,用limit进行分页,起始位置越靠后,耗时越长。
count优化
- 大数据情况下count比较耗时,这是由存储引擎引起的。
- 数据库对count(*)做了优化,所以尽量使用count(*);
update优化
如果update的字段没有索引,则事务对整个表进行加锁,而如果有索引,则加行锁。
文章来源:https://www.toymoban.com/news/detail-438543.html
总结
文章来源地址https://www.toymoban.com/news/detail-438543.html
到了这里,关于【MySQL】SQL优化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!