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


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)

时间: 2024-08-31 08:40:50

提高ORACLE数据库的查询统计速度(2)的相关文章

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

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

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

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

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

数据库系统是管理信息系统的核心,基于数据库的联机事务处理(OLTP)以及联机分析处理(OLAP)是银行.企业.政府等部门最为重要的计算机应用之一.从大多数系统的应用实例来看,查询操作在各种数据库操作中所占据的比重最大,而查询操作所基于的SELECT语句在SQL语句中又是代价最大的语句.举例来说,如果数据的量积累到一定的程度,比如一个银行的账户数据库表信息积累到上百万甚至上千万条记录,全表扫描一次往往需要数十分钟,甚至数小时.如果采用比全表扫描更好的查询策略,往往可以使查询时间降为几分钟,由此可见

求帮助,oracle数据库,查询出每个最新时间的那一条数据

问题描述 求帮助,oracle数据库,查询出每个最新时间的那一条数据 select p.* from (select rownum as 序号 ,n.* from (select sitename as 站点名称, RecordTime as 记录时间 ,decode(avg(case item when 211 then value else null end),0,'0.00000',trim(to_char(avg(case item when 211 then value else nu

oracle 分页查询-Oracle数据库分页查询

问题描述 Oracle数据库分页查询 分页查询语句.之前用java获取分页信息是分两步走的,首先获取想要得到的字段信息,第二部获取总记录数count(*).现在因为种种原因,就是想请教高手一下,能不能在一个sql中,查询出这些信息包括总记录数.比如 表 test 字段有id,name. select * from (select A.*,ROWNUM RN from(select * from test) A where ROWNUM<=11) where RN>=1; 这是分开写时,查询的语

oracle语句-求帮助,oracle数据库,查询出每个地方的最新时间的那一条数据

问题描述 求帮助,oracle数据库,查询出每个地方的最新时间的那一条数据 select p.* from (select rownum as 序号 ,n.* from (select sitename as 站点名称, RecordTime as 记录时间 ,decode(avg(case item when 211 then value else null end),0,'0.00000',trim(to_char(avg(case item when 211 then value else

Oracle数据库并行查询出错的解决方法_oracle

Oracle的并行查询是使用多个操作系统级别的Server Process来同时完成一个SQL查询,本文讲解Oracle数据库并行查询出错的解决方法如下: 1.错误描述 ORA-12801: 并行查询服务器P007中发出错误信号 ORA-01722:无效数字 12801.00000 -"error signaled in parallel query server %s" *Cause: A parallel query server reached an exception cond

php连接oracle数据库及查询数据的方法_php技巧

本文实例讲述了php连接oracle数据库及查询数据的方法.分享给大家供大家参考.具体分析如下: php有强大的功能不但可以支持mysql,mssql,mysqli之个我们还可以与oracle数据连接,要让php支持oracle非常的简单我们只要把php.ini中的;extention = php_oci8.dll分号去掉即可. php支持oracle连接函数 php.ini文件中的配置,去掉 ;extention = php_oci8.dll,去掉前面的分号,重启apache就可以了,如果不行

Oracle 数据库特殊查询总结_oracle

1. 查询本节点及本节点以下的所有节点: select * from table1 c start with c.p_id='0000000' connect by prior c.id=c.p_id and c.use_yn='Y' order by id ; 2. 查询节点中所有的层级关系 SELECT RPAD( ' ', 2*(LEVEL-1), '-' ) || DEPNAME "DEPNAME",CONNECT_BY_ROOT DEPNAME "ROOT"