MySql底层的数据结构主要是基于Hash 和 B+Tree
SQL需要优化的表现:
增删改查的性能下降:sql执行时间长、等待时间长
数据库性能下降的原因有哪些:
- 查询语句写的不好,各种连接,各种子查询导致索引无法使用或者没有建立索引
- 建立的索引失效,建立了索引,在真正执行时,没有用上建立的索引
- 关联查询太多join
- 服务器调优及配置参数导致,如果设置的不合理,比例不恰当,也会导致性能下降,sql变慢
- 系统架构的问题
通用的数据库优化方案有哪些?
硬件及系统配置方面的优化主要由运维人员主导,作为开发人员的我们只需要作了解即可,主要关注:数据库表架构优化及SQL与索引优化;