Oracle数据库优化的方案和实践
2008-09-08 12:53:38 来源:WEB开发网我们需要注意以下几点:
1) 减少不必要的SQL语句执行和SQL语句的执行次数。
每条SQL语句执行,都会消费系统资源,都有执行时间。减少不必要的SQL语句执行和减少SQL语句的执行次数,自然能减少业务执行时间。需要根据业务流程,重新设计数据处理的代码。此方法主要适用于procedure执行的数据合并、汇总。
2) 这些SQL语句,由于每个SQL语句都要执行很多次,应该尽量让该SQL的散列值在shared pool内存块中存在。也就是使用动态SQL,避免SQL硬解析。
可通过Oracle参数的设置,和动态SQL语句的应用,通过绑定变量的方式,减少SQL语句的解析次数。
3) 减少大表的操作,确保在一次事务中,同类操作只对大表执行一次。主要在数据合并和数据汇总的pprocedure和数据采集时出现。
- procedure:在我们的应用中,cell数据和traffic数据,以及link,linkset,trunkgroup等数据,都属于大数据量业务,对他们的每次操作,执行的时间都不短(即使做了表分区,减少数据扫描范围,操作的响应时间还是大于一个同类大小的普通表)。在多次执行的一个procedure中,通过使用临时表的方式,把多次大表操作,改造成一次大表操作,能极大的缩短业务执行时间。
- 数据采集:如果是普通的每条insert语句完成一条数据入库,为了保证数据的唯一性,每次入库的时候,都会判断该条数据是否存在数据库,造成对表不必要的多次操作。对于批量数据入库,我们推荐使用sqlldr的方法进行数据拷贝,能极大的提高数据入库时间。
二、Oracle数据库优化方案
1、内存等Oracle系统参数配置
Oracle 的parameter参数,分动态参数和静态参数,静态参数需要重新启动数据库才能生效,动态参数不需要重新启动数据库即可生效。
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接