Mysql性能优化、使用总结记录
来源:互联网 发布:淘宝店铺号怎么选靓号 编辑:程序博客网 时间:2024/05/16 11:19
“积土成山,风雨兴焉;积水成渊,蛟龙生焉;积善成德,而神明自得,圣心备焉。故不积跬步,无以致千里;不积小流,无以成江海。骐骥一跃,不能十步,驽马十驾,功在不舍。锲而舍之,朽木不折;锲而不舍,金石可镂。蚓无爪牙之利,筋骨之强,上食埃土,下饮黄泉,用心一也。蟹六跪而二螯,非蛇蟮之穴无可寄托者,用心躁也。是故无冥冥之志者,无昭昭之明;无昏昏之事者,无赫赫之功。行衢道不至,事两君者不容。目不能两视而明,耳不能两听而聪。螣蛇无足而飞,梧鼠五技而穷。诗曰:“尸鸠在桑,其子七兮。淑人君子,其仪一兮。其仪一兮。心如结兮。”故君子结于一也。”——荀子《劝学篇》
一、题记:
这里主要记录自己工作时在使用mysql过程中考虑的事项、解决问题收集的参考资料和学习过程,以供自己日后备查和初级同学参考。数据库优化经验还是得多向专业DBA学习,不敢班门弄斧~
二、整理:
1.创建表&写SQL时(每一点都有为什么):
1>注意各存储引擎的区别和选择(5.1老版本前默认是MyISAM,新版本默认InnoDB)
2>选择精确、适合的数据类型(如典型的IP、时间)
3>所有字段都非空,给予默认值,尽量不使用NULL(索引的影响)
4>表尽量有功能说明,每列也尽量有功能comment注释(方便自己方便他人)
5>针对Innodb表,尽量不执行SELECT COUNT(*)语句
6>把拖沓复杂,速度慢的的查询分解成多个简洁明了的查询,尽管查询多次,但总体效率却可能反而更高,且减少锁表可能
7>执行查询时,尽量不使用外部函数(破坏使用索引)
8>在索引字段上使用 LIKE 查询时,左边不要使用 ‘%’ 修饰符(否则走不到索引)
9>多用Explain分析SQL执行过程2.使用Explain优化SQL:
1>order by优化
2>group by优化
3>limit优化
4>更多…3.服务器运行状态查看:
1>使用show status,优化参考
2>使用show process4.服务器优化:
MySQL数据库常见的2个瓶颈是CPU和I/O,CPU在饱和时候一般发生在数据装入内存或从磁盘上读取数据时。磁盘I/O瓶颈发生在装入数据远大于内存容量时,如果应用分布在网络上,那么当查询量相当大时那么平瓶颈就会出现在网络上,我们可以用mpstat, iostat, sar和vmstat来查看系统的性能状态1>了解服务器重要配置,如wait_timeout、max_connections、innodb_page_size、innodb_sort_buffer_size等,参考官方手册
2>参考阿里DBA简朝阳优化
- Mysql性能优化、使用总结记录
- MySQL性能优化总结
- 【总结】MySQL性能优化
- MySQL性能优化总结
- MySQL 性能优化总结
- MySQL性能优化总结
- MySQL性能优化总结
- MySQL 性能优化总结
- MySQL性能优化总结
- MySQL性能优化总结
- MySQL性能优化总结
- MySQL性能优化总结
- MySQL性能优化总结
- MySQL性能优化总结
- MySQL性能优化总结
- MySQL性能优化总结
- MySQL性能优化总结
- MySQL性能优化总结
- Android自定义捕获Application全局异常
- shell--判断执行脚本所花费的时间
- 7-awk 命令介绍
- JSP - getParameterValues与getParameterNames
- Pythonic的一些用法
- Mysql性能优化、使用总结记录
- SweepGradient参数的意义
- 排序算法总结
- 剑指offer--数值的整数次方
- 用一个二维码做下载地址,自动区分是 iOS 还是 Android
- 省略号的使用
- EditText设置光标的位置
- Newtonsoft.Json高级用法
- HTTPS证书生成原理和部署细节