
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
MySQL数据库是程序员在开发软件的时候会经常用到的一个数据库类型,下面我们就通过案例分析来简单了解一下,MySQL数据库应用与优化分析。
1、为什么要进行数据库优化
避免网站页面出现访问错误
由于数据库连接timeout产生页面5xx错误,tomanyconnection
由于慢查询造成页面无法加载:由于数据库无法及时的返回数据,导致页面一直无法返回
由于阻塞造成数据无法提交:
增加数据库的稳定性
很多数据库问题都是由于低效的查询引起的
优化用户体验
流畅页面的访问速度
良好的网站功能体验
2、MySql数据库优化
可以从哪几个方面进行数据库的优化?
SQL及索引优化
根据需求写出良好的SQL,并创建有效的索引,实现某一种需求可以多种写法,这时候我们就要选择一种效率高的写法。这个时候就要了解sql优化
数据库表结构优化
根据数据库的范式,设计表结构,表结构设计的好直接关系到写SQL语句。
系统配置优化
大多数运行在Linux机器上,如tcp连接数的限制、打开文件数的限制、安全性的限制,因此我们要对这些配置进行相应的优化。
硬件配置优化
选择适合数据库服务的cpu,更快的IO,更高的内存;cpu并不是越多越好,某些数据库版本有大的限制,IO操作并不是减少阻塞。
3、如何通过慢查日志发现有问题的SQL
查询次数多且每次查询占用时间长的sql
通常为pt-query-digest分析的前几个查询;该工具可以很清楚的看出每个SQL执行的次数及百分比等信息,执行的次数多,占比比较大的SQL
IO大的sql
注意pt-query-digest分析中的Rowsexamine项。扫描的行数越多,IO越大。
未命中的索引的SQL
注意pt-query-digest分析中的Rowsexamine和RowsSend的对比。说明该SQL的索引命中率不高,对于这种SQL,我们要重点进行关注。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。