1、优化表结构()
(1)尽量使用数字型字段:若只含数值信息的字段尽量不要设计为字符型,这会降低查询和连接的性能,并会增加存储开销。
这是因为引擎在处理查询和连接时会逐个比较字符串中每一个字符,而对于数字型而言只需要比较一次就够了。
(2)尽可能的使用 varchar 代替 char:可变长字段存储空间小,可以节省存储空间。
(3)当索引列大量重复数据时,可以把索引删除掉:比如有一列是性别,几乎只有男、女、未知,这样的索引是无效的。
2、优化查询语句(避免索引失效)
(1)应尽量避免在 where 子句中使用!=或<>操作符
(2)应尽量避免在 where 子句中使用 or 来连接条件
(3)任何查询也不要出现select *
(4) 避免在 where 子句中对字段进行 null 值判断
3、索引优化(慢查询优化)
(1)对作为查询条件和 order by 的字段建立索引
(2)避免建立过多的索引,多使用组合索引
(3)分析语句,是否加载了不必要的字段/数据
(4)分析 SQL 执行句话,是否命中索引等
(5)如果 SQL 很复杂,优化 SQL 结构
(6)如果表数据量太大,考虑分表
索引有哪些优缺点?
(1) 优点:
唯一索引可以保证数据库表中每一行的数据的唯一性
索引可以加快数据查询速度,减少查询时间
(2)缺点:
创建索引和维护索引要耗费时间
索引需要占物理空间,除了数据表占用数据空间之外,每一个索引还要占用一定的物理空间
以表中的数据进行增、删、改的时候,索引也要动态的维护。
慢查询优化:/developer/article/1832945
1、
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。