MySQL性能优化要点大全

4 篇文章 0 订阅

MySQL优化知识点
首先,关键的生产DBMS都应该运行在自己的服务器上。
MySQL是用一些列默认配置预先配置的,这些配置开始通常是很好的。但是过了一段时间后,有些东西需要调整,如内存分配,缓冲区大小等。查看当前的设置,可以使用show variables和show status命令。
MySQL是一个多用户多线程的DBMS,换言之他经常同时执行多个任务。如果这些任务中的某个执行缓慢,那么所有的请求都会执行缓慢。如果遇到显著的性能不良,可以使用show processlist显示所有的活动进程。还可以使用kill命令终结某个特定进程。进入正题,如何做MySQL性能优化?

  1. 多表联合查询,即select语句,可以尝试联结、并、子查询等,找出查询效率最佳的select语句。
  2. 使用explain 语句让MySQL解释mysql语句的执行顺序,一般来说存储过程执行得要比一条一条地执行其中各条MySQL语句块,应该总是使用正确的数据类型,比如占内存比较小,不要检索出比实际需求多的数据,比如尽量少用select* from tb;而是检索特定的数据:select id from tb;
  3. 有些操作使用了delayed延迟操作,对于需要立即返回响应结果,应该慎用。
  4. 导入数据时应该关闭自动提交,并且删除索引,导入完成后再重建索引。
  5. 最好是建立索引,因为索引能改善数据的检索性能,涉及到select 语句使用where条件查询 、order by排序就可以考虑给目字段添加索引。如果一个简单的where语句返回结果所花的时间很长,就可以断定其中的使用列就是需要索引的对象。
  6. select语句中有一系列复杂or条件,可以通过多条select语句和union联结查询。
  7. 索引会降低写数据库的性能:插入、删除、更新,可以考虑读写分离。
  8. like模糊查询很慢,最好是使用fulltext而不是like
  9. 数据库是不断变化的实体,表的性能会随着数据的变化而变化,因此理想的优化和动态配置也是需要间断性的需要的。
  10. 最重要的规则:每条规则在某些条件下都会被打破。
    以上知识来自学习书籍《mysql必知必会》,更深层次知识点,有待更新。关于MySQL的底层原理,推荐下面的大佬写的:
    https://aobing.blog.csdn.net/article/details/109257302
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值