google搜索 站内搜索                 软件测试门户 | 软件测试培训 | 文章资料精选 | 软件测试论坛 | 测试解决方案 | 软件测试博客 | 测试招聘求职 
打印

[资料] 数据库系统的性能调整

数据库系统的性能调整


1)SQL语句的编码检验: 通过DBMS提供的监控和统计功能,找出频繁执行的SQL语句并对其进行优化。步骤为,
(1)尽可能地减少多表查询或建立物化视图;
(2)以不相关子查询代替相关子查询;
(3)只检索需要的列;
(4)用带IN的条件子句等价替换OR子句;
(5)经常提交COMMIT,以尽早释放锁。

  2)表设计的评价:首先要求关系都能符合3NF或BCNF,然后还要根据实际运行情况对表进行调整。

调整的原则是:

如果频繁地访问涉及的是对两个相关表进行连接操作,则将这两个表合并;
如果频繁地访问只是在表中的一部分字段上进行,则考虑分解表或将该部分单独拿出作为一个表;
对于很少更新的表,引入物化视图。

  3)索引的改进:索引的调整原则如下,
如果查询是瓶颈--在关系上新建适当的索引,通常在作为查询条件的属性上建立索引可以提高查询效率;
如果更新是瓶颈--因为每次更新都会重建表上的索引,引起效率的降低,可以考虑删除某些索引;
选择适当的索引类型--比如经常使用范围查询,可以使用B树索引,比散列索引更高效;
将有利于大多数据查询和更新的索引设为聚簇索引。

  4)设备的增强:高速的计算机、增加内存、高速网络设备、高速存储设备。

5)存储分配:数据库中的数据是以文件形式存储在物理存储设备上的,程序通过DBMS完成I/O操作来访问数据。提高系统访问效率的有效手段就是提高I/O操作的效率。使用这样几种手段管理数据的存储,可以有效地提高性能:

(1)索引文件和数据文件分开存储,事务日志文件存储在高速设备上;
(2)适时修改数据文件和索引文件的页面大小;
(3)定期对数据进行排序;
(4)增加必要的索引项。
[ 本帖最后由 huangcm 于 2007-4-14 20:49 编辑 ]

TOP

 
当前时区 GMT+8, 现在时间是 2008-12-3 03:26Copyright(C)上海博为峰软件技术有限公司 2001-2007 电话:021-64471599-8017
当您在访问网站、论坛及博客过程中遇到问题时可发送email:webmaster@51testing.com或发送论坛短信至管理员风在吹