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