许多程序员在面试时,经常会被问到 “数据库调优”的事情,这时,许多人就会产生疑问,这不是DBA的事吗,但回答不好还是显得不够专业,笔者查找了一些相关资料,发现许多方面还真是程序员的事情,下面总结一下,希望对大家有所帮助。
本文将以影响程度排序:
D1 业务逻辑 (影响最大)
D2 数据设计 (表结构设计,数据建模)
D3 应用程序设计 (SQL 语句的写法)
D4 数据库的逻辑结构 (索引,区间,段,表空间)
D5 数据库操作 (参数和配置)
D6 访问路径
D7 内存分配情况
D8 I/O 和物理设计 (DBA 与业务沟通)(峰值多大,使用周期)
D9 资源的征用
D10 操作系统的调节
D1-D3 影响最大但比较难修改 (事先去做)
D4-D9 性能影响不是最大但经常去做的(DBA)
D10 手段不是很多
从上文中,大家就可以发现,D1-D3都是和程序员相关的,这也正应了那句话:“良好的程序,业务逻辑设计是最好的调优。”