实际上为了保证ORACLE数据库运行在最佳的性能状态下在信息系统开发之前就应该考虑数据库的优化策略优化策略一般包括服务器操作系统参数调整ORACLE数据库参数调整网络性能调整应用程序SQL语句分析及设计等几个方面其中应用程序的分析与设计是在信息系统开发之前完成的
分析评价ORACLE数据库性能主要有数据库吞吐量数据库用户响应时间两项指标数据库吞吐量是指单位时间内数据库完成的SQL语句数目数据库用户响应时间是指用户从提交SQL语句开始到获得结果的那一段时间数据库用户响应时间又可以分为系统服务时间和用户等待时间两项即
数据库用户响应时间=系统服务时间 + 用户等待时间
上述公式告诉我们获得满意的用户响应时间有两个途径一是减少系统服务时间即提高数据库的吞吐量二是减少用户等待时间即减少用户访问同一数据库资源的沖突率
性能优化包括如下几个部分
ORACLE数据库性能优化之一调整数据结构的设计
这一部分在开发信息系统之前完成程序员需要考虑是否使用ORACLE数据库的分区功能对于经常访问的数据库表是否需要建立索引等
ORACLE数据库性能优化之二调整应用程序结构设计
这一部分也是在开发信息系统之前完成程序员在这一步需要考虑应用程序使用什么样的体系结构是使用传统的Client/Server两层体系结构还是使用Browser/Web/Database的三层体系结构不同的应用程序体系结构要求的数据库资源是不同的
ORACLE数据库性能优化之三调整数据库SQL语句
应用程序的执行最终将归结为数据库中的SQL语句执行因此SQL语句的执行效率最终决定了ORACLE数据库的性能ORACLE公司推荐使用ORACLE语句优化器(Oracle Optimizer)和行锁管理器(rowlevel manager)来调整优化SQL语句
ORACLE数据库性能优化之四调整服务器内存分配
内存分配是在信息系统运行过程中优化配置的数据库管理员可以根据数据库运行状况调整数据库系统全局区(SGA区)的数据缓沖区日志缓沖区和共享池的大小还可以调整程序全局区(PGA区)的大小需要注意的是SGA区不是越大越好SGA区过大会占用操作系统使用的内存而引起虚拟内存的页面交换这样反而会降低系统
ORACLE数据库性能优化之五调整硬盘I/O这一步是在信息系统开发之前完成的
数据库管理员可以将组成同一个表空间的数据文件放在不同的硬盘上做到硬盘之间I/O负载均衡
ORACLE数据库性能优化之六调整操作系统参数
例如运行在UNIX操作系统上的ORACLE数据库可以调整UNIX数据缓沖池的大小每个进程所能使用的内存大小等参数
实际上上述ORACLE数据库性能优化措施之间是相互联系的ORACLE数据库性能恶化表现基本上都是用户响应时间比较长需要用户长时间的等待但性能恶化的原因却是多种多样的有时是多个因素共同造成了性能恶化的结果这就需要数据库管理员有比较全面的计算机知识能够敏感地察觉到影响数据库性能的主要原因所在另外良好的数据库管理工具对于优化数据库性能也是很重要的