| 副标题[/!--empirenews.page--]   1 前言
在进行 MySQL 的优化之前必须要了解的就是 MySQL 的查询过程,很多的查询优化工作实际上就是遵循一些原则让 MySQL 的优化器能够按照预想的合理方式运行而已。 
 2 优化的哲学
2.1 优化可能带来的问题
    优化不总是对一个单纯的环境进行,还很可能是一个复杂的已投产的系统。优化手段本来就有很大的风险,只不过你没能力意识到和预见到!任何的技术可以解决一个问题,但必然存在带来一个问题的风险!对于优化来说解决问题而带来的问题,控制在可接受的范围内才是有成果。保持现状或出现更差的情况都是失败! 2.2 优化的需求
    稳定性和业务可持续性,通常比性能更重要!优化不可避免涉及到变更,变更就有风险!优化使性能变好,维持和变差是等概率事件!切记优化,应该是各部门协同,共同参与的工作,任何单一部门都不能对数据库进行优化!所以优化工作,是由业务需要驱使的!!! 2.3 优化由谁参与在进行数据库优化时,应由数据库管理员、业务部门代表、应用程序架构师、应用程序设计人员、应用程序开发人员、硬件及系统管理员、存储管理员等,业务相关人员共同参与。 3 优化思路
3.1 优化什么在数据库优化上有两个主要方面:即安全与性能。 安全 → 数据可持续性 性能 → 数据的高性能访问 3.2 优化的范围有哪些存储、主机和操作系统方面: 
    主机架构稳定性I/O规划及配置Swap交换分区OS内核参数和网络问题 应用程序方面: 
    应用程序稳定性SQL语句性能串行访问资源性能欠佳会话管理这个应用适不适合用MySQL 数据库优化方面: 说明:不管是在,设计系统,定位问题还是优化,都可以按照这个顺序执行。 3.3 优化维度数据库优化维度有四个: 
 优化选择 
优化成本:硬件>系统配置>数据库表结构>SQL及索引优化效果:硬件<系统配置<数据库表结构
 4 优化工具有啥?
4.1 数据库层面检查问题常用工具 mysql msyqladmin                                 mysql客户端,可进行管理操作 mysqlshow                                  功能强大的查看shell命令 show [SESSION | GLOBAL] variables          查看数据库参数信息 SHOW [SESSION | GLOBAL] STATUS             查看数据库的状态信息 information_schema                         获取元数据的方法 SHOW ENGINE INNODB STATUS                  Innodb引擎的所有状态 SHOW PROCESSLIST                           查看当前所有连接session状态 explain                                    获取查询语句的执行计划 show index                                 查看表的索引信息 slow-log                                   记录慢查询语句 mysqldumpslow                              分析slowlog文件的 
 (编辑:宣城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |