1.数据库表结构设计,以实际应用为前提的下遵循范式规则,对某张表设计时,考虑数据量大小是否需要分区功能,对于经常访问的表是否需要建立索引;
2.基础框架设计,对体系结构进行选型,是使用传统的Clinet/Server两层体系结构,还是使用Browser/web/Database的三层体系结构,还是选用其他更复杂的体系结构;
3.sql语句的优化,sql的执行效率最终决定了数据库的性能。比如ORACLE数据库,ORACLE公司推荐使用ORACLE语句优化器(Oracle Optimizer)和行锁管理器(row-level manager)来调整优化sql语句;
以下几点一般由DBA进行操作:
4.服务器内存分配调整,内存分配是在信息系统运行过程中优化配置的,DBA可以根据数据库的运行状况调整数据库系统全局区(SGA区)的数据缓冲区、日志缓存区、共享池的大小;还可以调整全局区(PGA区)的大小。需要注意的是,SGA区不是越大越好,SGA区过大会占用操作系统使用的内存而引起虚拟内存的页面交换,反而降低系统性能;
5.磁盘I/O的调整,这一步实在信息系统开发之前完成的。DBA可以将组成同一个表空间的数据文件放在不同的硬盘上,做到硬盘之间的I/O负载均衡;
6.操作系统参数调整,例如:运行在UNIX操作系统上的数据库,可以调整UNIX数据缓冲池的大小,每个进程所能使用的内存大小等参数。
讲的比较笼统,前三步是后端开发人员所应具备的基础知识。后三步可以选用合适的数据库性能优化工具。