zoukankan      html  css  js  c++  java
  • mysql数据库性能调优总结积累

    mysql数据库的调优大概可以分为四大块

    0 架构调优

           ---根据业务 读写分库分表

             ---主从 读写分离

    1 配置的调优  

           ---开启缓存查询  设置缓存大小

           ---最大连接数设置

           ---数据库引擎配置 myisam(读操作,查询快) Innodb(写操作,主库,支持事务,安全) 引擎配置

           ---日志配置

    2 表结构的调优

           ----建立合适的索引(主键索引,唯一索引,普通索引,全文索引 myisam中用来检索文本)EXPLAIN SELECT命令那里往往可以获得一些帮助知道哪些需要建立索引(优点:查询快 缺点:占空间,更新sql慢)

           ---尽量每个表都加上ID列,除关联表

             ---分表,垂直分割,列太长,分割为固定长度的表 和 不固定长度的表 固定长度查询更快,前提是被分库后的另一些表不会被经常join到。否则效率更低。

    3 sql的调优

           ---避免全模糊查询%like%,会使索引失效。

           ---避免sql中直接使用sql函数,sql函数会使缓存查询失效,用变量代替之。

           ---大批量的操作使用limit分批进行更高效(避免锁全表),对于明知取出数据只要1条的查询加上limit 1 更高效。

           ---is not null  <> !=,均会使索引失效。

           ---对于一些固定取值的列,尽量使用enum代替varchar,更高效。

           ---避免无意义的全表扫描 count(*)

  • 相关阅读:
    git fetch pull checkout区别
    git config配置文件
    php错误以及常用笔记
    Linux chmod命令修改文件与文件夹权限的命令附实例
    学习笔记 2016-04-12
    MYSQL 【汇总数据】 【分组数据】 学习记录
    Mysql常用函数
    学习笔记
    a++ ++a 文件上传函数错误 smarty模板特点
    算法稳定性相关
  • 原文地址:https://www.cnblogs.com/AmilyWilly/p/6163962.html
Copyright © 2011-2022 走看看