Java常见面试题丨数据库优化策略有哪些?

本文介绍了数据库优化策略,包括SQL优化、索引优化、避免索引失效的方法,SQL语句调优技巧,合理的数据库设计原则以及分表策略。通过理解并实践这些策略,能有效提升数据库性能。
摘要由CSDN通过智能技术生成

在这里插入图片描述
评论区或者私信我“想要面试宝典”获取面试资源

1、SQL优化主要优化的还是查询, 优化查询的话, 索引优化是最有效的方案。

首先要根据需求写出结构良好的SQL,然后根据SQL 在表中建立有效的索引。但是如果索引太多,不但会影响写入的效率,对查询也有一定的影响。

定位慢SQL然后并优化

这是最常用,每一个技术人员都应该掌握基本的SQL调优手段(包括方法、工具、辅助系统等)。这里以MySQL为例,最常见的方式是,由自带的慢查询日志或者开源的慢查询系统定位到具体的出问题的SQL,然后使用explain。profile等工具来逐步调优,最后经过测试达到效果后上线。

explain + SQL语句查询SQL执行过程, 通过执行计划,我们能得到哪些信息:

A:哪些步骤花费的成本比较高

B:哪些步骤产生的数据量多,数据量的多少用线条的粗细表示,很直观

C:每一步执行了什么动作

优化索引

(1)索引列务必重复度低, where条件字段上需要建立索引;

(2)使用索引就不能用OR查询,否则索引不起作用;

(3)使用索引,like模糊查询不能以%开头;

(4)查询条件务必以索引列开头,否则索引失效;

(5)复合索引遵守最左原则。

避免索引失效

A:尽量不要在where 子句中对字段进行null 值判断,否则将导致引擎

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值