`

提高ORACLE数据库的查询统计速度

 
阅读更多

大型数据库系统中往往要用到查询统计,但是对于数据量大的系统,用户在进行复杂的查询统计时往往感到速度很慢,不能满足应用要求,这就要求我们在设计数据库系统时进行合理设置,提高查询统计的速度。本文结合笔者的项目开发经验,阐述具体的设置方法。
以oracle7.33数据库系统为例,我们在开发大型oracle数据库系统时结合项目的特点,本着安全、高效的原则对数据库进行了一些物理设计,从而大大提高了数据库的查询统计速度。总结为如下几点:

  1)扩大数据表空间到500M,用于存放本系统的数据;
  
  2)段盘区的初始大小为10K,增长大小为10K,增长幅度为1;
  
  3)用户临时空间增大40M;
  
  4)系统临时表空间和回滚段表空间增大40M,并且新建4个回滚段;
  
  5)需要经常联结查询,而且数据量又大的库存表、名录表、收发料表放在一簇内;
  
  6)提供定时备份,备份文件放在另外的机器上。
  
  设置数据表空间的SQL语句如下:
  
  CREATE TABLESPACE WXGL_DATA1 DATAFILE 'WXGL_DATA1.ORA' SIZE 500M ONLINE;  
  
  增加系统临时表空间和回滚段表空间的SQL语句如下:
  
  ALTER TABLESPACE TEMPORARY_DATA ADD DATAFILE 'TMP2ORCL.ORA' SIZE 40M;
  ALTER TABLESPACE ROLLBACK_DATA ADD DATAFILE 'RBS2ORCL.ORA' SIZE 40M;
    
  将数据空间设置在指定的数据文件的SQL语句如下:
  
  CREATE USER ZBGL IDENTIFIED BY ZBGL;
  GRANT DBA TO ZBGL;
  ALTER USER ZBGL DEFAULT TABLESPACE WXGL_DATA1 TEMPORARY TABLESPACE TEMPORARY_DATA;

1. 设置五个回滚段的SQL语句如下:
SELECT SEGMENT_NAME FROM DBA_ROLLBACK_SEGS WHERE INITIAL_EXTENT < 512000 AND
  UPPPER(OWNER) = 'PUBLIC';
  SELECT UPPER(STATUS) FROM DBA_ROLLBACK_SEGS WHERE UPPER(SEGMENT_NAME) = ''
  
  ALTER ROLLBACK SEGMENT RB1 OFFLINE;
  ALTER ROLLBACK SEGMENT RB2 OFFLINE;
  ALTER ROLLBACK SEGMENT RB3 OFFLINE;
  ALTER ROLLBACK SEGMENT RB4 OFFLINE;
  ALTER ROLLBACK SEGMENT RB5 OFFLINE;
  
  DROP ROLLBACK SEGMENT RB1;
  DROP ROLLBACK SEGMENT RB2;
  DROP ROLLBACK SEGMENT RB3;
  DROP ROLLBACK SEGMENT RB4;
  DROP ROLLBACK SEGMENT RB5;
  
  CREATE PUBLIC ROLLBACK SEGMENT RB1 TABLESPACE ROLLBACK_DATA
   STORAGE (INITIAL 512000 NEXT 512000 MAXEXTENTS 121);
  CREATE PUBLIC ROLLBACK SEGMENT RB2 TABLESPACE ROLLBACK_DATA
   STORAGE (INITIAL 512000 NEXT 512000 MAXEXTENTS 121);
  CREATE PUBLIC ROLLBACK SEGMENT RB3 TABLESPACE ROLLBACK_DATA
   STORAGE (INITIAL 512000 NEXT 512000 MAXEXTENTS 121);
  CREATE PUBLIC ROLLBACK SEGMENT RB4 TABLESPACE ROLLBACK_DATA
   STORAGE (INITIAL 512000 NEXT 512000 MAXEXTENTS 121);
  CREATE PUBLIC ROLLBACK SEGMENT RB5 TABLESPACE ROLLBACK_DATA
   STORAGE (INITIAL 512000 NEXT 512000 MAXEXTENTS 121);
  
  ALTER ROLLBACK SEGMENT RB1 ONLINE;
  ALTER ROLLBACK SEGMENT RB2 ONLINE;
  ALTER ROLLBACK SEGMENT RB3 ONLINE;
  ALTER ROLLBACK SEGMENT RB4 ONLINE;
  ALTER ROLLBACK SEGMENT RB5 ONLINE;
  
  COMMIT;

2.将数据量大的库存表等放在一簇内的SQL语句如下:
  
   KCB='CREATE TABLE QC_KCB( '
   +' CKNM NUMBER(8) ,'
   +' QCNM NUMBER(10) ,'
   +' CKKC NUMBER(12,2),'
   +' SNCKKC NUMBER(12,2),'
   +' LDJ NUMBER(12,2),'
   +' BZ VARCHAR(100),'
   +' PRIMARY KEY(CKNM,QCNM))'
   +' TABLESPACE WXGL_DATA1 ' ;(大数据量的库存表等放在WXGL_DATA1)
  QCFL = 'CREATE TABLE QC_QCFL '
   + '(FLBH NUMBER(2) PRIMARY KEY,'
   + ' FLMC VARCHAR(20) '
   + ' ) '
   +' TABLESPACE WXGL_DATA2 ' ;(其他表放在WXGL_DATA2)
分享到:
评论

相关推荐

    提高Oracle数据库查询统计速度

    大型数据库系统中往往要用到查询统计,但是对于数据量大的系统,用户在进行复杂的查询统计时往往感到速度很慢,不能满足应用要求,这就要求我们在设计数据库系统时进行合理设置,提高查询统计的速度。本文结合笔者的...

    高性能动态SQL Oracle数据安全 Oracle 数据库的聚簇技术 等等

    提高Oracle数据库查询统计速度 14 Oracle中巧取指定记录 14 Oracle数据安全 15 Oracle字段上建立并使用索引 29 用Windows脚本宿主自动化Oracle工具 31 进程结构和内存结构 32 Oracle监控数据库性能的SQL汇总 36 ...

    提高Oracle的查询统计速度方法

    大型数据库系统中往往要用到查询统计,...本文以Oracle7.33数据库系统为例,我们在开发大型Oracle数据库系统时结合项目的特点,本着安全、高效的原则对数据库进行了一些物理设计,从而大大提高了数据库的查询统计速度。

    提高ORACLE数据库的查询统计速度参考.pdf

    提高ORACLE数据库的查询统计速度参考.pdf

    提高基于ORACLE数据库的查询统计速度.pdf

    提高基于ORACLE数据库的查询统计速度.pdf

    计算机等考三级数据库知识辅导:提高ORACLE数据库的查询统计速度.docx

    计算机等考三级数据库知识辅导:提高ORACLE数据库的查询统计速度.docx

    提高基于ORACLE数据库的查询统计速度的做法.pdf

    提高基于ORACLE数据库的查询统计速度的做法.pdf

    Object Browser7.0中文版(ORACLE数据库的开发工具)

    Browser7.0版,为了提高软件开发的效率,简化ORACLE数据库开发维护人员的工作,我们同System&nbsp;Integrator进行合作,在中国市场上推广其产品.Object&nbsp;Browser7.0中文版目前已经问世,为使中国消费者便于购买...

    提交数据库查询统计效率

    大型数据库系统中往往要用到查询统计,但是对于数据量大的系统,用户在进行复杂的查询统计时往往感到速度很慢,不能满足应用要求,这就要求我们在设计数据库系统时进行合理设置,提高查询统计的速度。本文结合笔者的...

    oracle数据库表设计.pptx

    例如: 表1 商品表的表结构 商品名称 商品型号 单价 数量 金额 电视机 29寸 2,500 40 100,000增加"金额"这个冗余字段,可以提高查询统计的速度,这就是以空间换时间的作法。 oracle数据库表设计全文共29页,当前...

    关于Oracle多表连接,提高效率,性能优化操作

    执行路径:ORACLE的这个功能大大地提高了SQL的执行性能并节省了内存的使用:我们发现,单表数据的统计比多表统计的速度完全是两个概念.单表统计可能只要0.02秒,但是2张表联合统计就可能要几十表了. 这是因为ORACLE只对...

    如何提高MYSQL数据库的查询统计速度 select 索引应用

    从大多数系统的应用实例来看,查询操作在各种数据库操作中所占据的比重最大,而查询操作所基于的SELECT语句在SQL语句中又是代价最大的语句。举例来说,如果数据的量积累到一定的程度,比如一个银行的账户数据库表...

    Oracle性能优化技巧.rar

    提高Oracle的查询统计速度方法简介 18 oracle优化:说一说Oracle的优化器(Optimizer) 22 oracle数据库:Oracle非法数据库对象引起的错误 24 Oracle优化实例 26 ado.netoracle:ADO.Net实现Oracle大批量数据的更新优化 ...

    数字水务综合数据库管理系统设计与实现

    我国的水利信息化工作起步晚,从我国水利信息化研究的现状看,与欧美国家...针对系统中实时监测子系统具有非汛期自动监测每小时上报一次数据、汛期加密监测、暴雨加报、实时召测的特点,造成数据量大,统计数据时耗时长...

    支持多数据库的ORM框架ef-orm.zip

    EF的设计的一个主要目的是提高开发效率,减少编码工作,让开发者“零配置”“少编码”的操作数据库大部分功能。 例如:数据库查询条件的传入问题是所有ORM框架都不能回避的一个问题,所以我经常在想——既然我们...

    java无限爬取新浪博客蜘蛛程序1.20版本 for windows界面风格

    1.14 更新界面添加数据库创建 更新数据库连接重复值 优化线程管理 1.15 更新 优化数据库连接 更新文本创建bug 界面化 图片下载bug 1.16 添加Oracle数据库支持 添加线程提高抓取效率 1.20 添加统计文章和用户功能 ...

    AppFramework数据库访问组件_代码生成插件_V1.1.rar

    &lt;br&gt;2、 提供了内置的数据库内分页访问机制,极大地提高了海量查询的响应速度; &lt;br&gt;3、 增加ObjectTable泛型类来承载查询返回的对象集,不但比IList更加强类型化,还提供了二分查找功能,使得对象结果集可以...

    8个数据库设计实例.pdf

    数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响,好的数据 库结构设计会减少数据库的存储量, 数据的完整性和一致性相比较高, 系统具有较快的响应 速度,简化基于此数据库的应用程序的实现...

    8个数据库设计典型实例.pdf

    数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响 好的数据 库结构设计会减少数据库的存储量 数据的完整性和一致性相比较高 系统具有较快的响应 速度 简化基于此数据库的应用程序的实现等等。...

Global site tag (gtag.js) - Google Analytics