简单mysql调优总结

1.缓存。

缓存是解决这类问题的一把手。它既可以加快整个系统(并非数据库系统,使用缓存的时候并没有去访问数据库)的访问速度,也可以减少数据库负载的压力。而缓存一般都是在查询中使用,我们并不希望每一次的查询都要去访问数据库。
数据访问层一般都只是对于数据库的增删改查的接口的定义,所以缓存一般都在服务层进行。
比如mybatis中的一级缓存,通过判断查询条件是否要访问数据库,查询条件与某一次相同,则直接返回缓存中的数据,查询条件不同则需要访问数据库,并且将结果放到缓存中。

2.尽量使用LIMIT 1

——我们作为开发者,是能够知道我们需要的数据条数的,若已知结果是一条时,一定要使用limit 1 ,这样让mysql知道查询到一条时立即停止搜索,从而带来性能上的提升。

3.避免select

*,取之所需,避免给mysql带来不必要的负担。使用select * 时,多想一下是否可以在此处进行一些优化。

4.选择正确的存储引擎。

myisam适合一些需要大量查询的应用,但对于需要大量写操作并不是很好。因为它使用的是表级锁,你更新的时候整张表都会被锁起来。试想一下,当你在更新某一行数据的时候,导致其他的行都无法被访问,这会不会很难受。另外,Myisam对于select count(*)这类操作的计算是很快的。关于innodb,对于一些小的应用,它会比myisam还慢,它支持的是行级锁,于是写操作较多时,它表现的更加优秀。它还支持一些更高级的应用,比如:事务。

5.根据需要的规则建立索引。

索引建立规则

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值