数据库

本类阅读TOP10

·SQL语句导入导出大全
·SQL Server日期计算
·SQL语句导入导出大全
·SQL to Excel 的应用
·Oracle中password file的作用及说明
·MS SQLServer OLEDB分布式事务无法启动的一般解决方案
·sqlserver2000数据库置疑的解决方法
·一个比较实用的大数据量分页存储过程
·如何在正运行 SQL Server 7.0 的服务器之间传输登录和密码
·SQL中两台服务器间使用连接服务器

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
不更改代码的情况下如何优化数据库系统

作者:未知 来源:月光软件站 加入时间:2005-6-5 月光软件站

这个问题很多DBA可能都碰到过吧:比如刚接手一个旧有系统,原来的厂商不允许对代码修改,或者是系统应用比较关键。不允许作修改,或者是源代码出于商业目的,进行了一定程度的加密,还有的时候可能是行政因素--领导为了避免责任,不允许你这样做,但这个时候,系统的性能上的问题还比较严重,还有其他办法怎么对系统进行优化么?

在这里我尝试总结一下可能有的途径。

针对特定的SQL进行"外科手术" (Metalink 122812.1),改进执行计划

  • 更新统计信息 (调整采样率/柱状图统计)
  • 调整索引 (添加或调整合适的索引,删除不必要的索引)
  • 创建物化试图(用空间开销来换取时间收益)

优化OS和数据库以外的其他东西

首先优化操作系统-比如核心参数的合理调整,操作系统资源的合理分配; 磁盘IO的调整,这是很重要的一部分,因为磁盘IO速度很容易造成系统瓶颈;网络资源的优化-TCP/IP的参数调整;

调整Oracle初始化参数

优化器模式的设定,db_cache 参数等设定,sga 大小等参数设定,都对数据库性能有着重要的影响。

合理的系统资源调度

在一些批处理操作为主的系统中,系统资源的调度是比较重要的,调度不合理,很容易造成资源争用。有的系统可能在系统创建之初调度是比较合理的,经过一段时间运行之后,可能因为数据量的变化,SQL语句的执行计划变化等会造成操作时间上的重叠,这肯定会给系统带来压力上的问题。

调整数据库对象

  • 调整pctfree ,freelist ,存储参数
  • 调整表空间文件和数据库对象(表、索引)的磁盘分布。
  • cache 一些常用的数据库对象。

系统Bug问题带来的影响/升级改进性能

Oracle软件Bug多多,系统运行初期有的Bug带来的危害还不够明显,随着时间的推移,个别的Bug会给系统性能造成问题。这个时候对系统的Bug 修复已经对数据库系统进行升级就是必要的。通过升级,修正Oracle软件缺陷,同时在升级后也可能会增强数据库引擎的效率。当然,也要注意升级可能带来的不良的影响。



相关文章

相关软件