易截截图软件、单文件、免安装、纯绿色、仅160KB

oracle 排序内存

我在http://zhidao.baidu.com/question/123262452.html?fr=msg 提的问题,整理到这里 非常感谢 zjwssg
的回答
排序内存涉及到PGA。
什么时候使用自动PGA内存管理?什么时候使用手动PGA内存管理?
  白天系统正常运行时适合使用自动PGA内存管理,让Oracle根据当前负载自动管理、分配PGA内存。
  夜里用户数少、进行维护的时候可以设定当前会话使用手动PGA内存管理,让当前的维护操作获得尽可能多的内存,加快执行速度。
  如:服务器平时运行在自动PGA内存管理模式下,夜里有个任务要大表进行排序连接后更新,就可以在该操作session中临时更改为手动PGA内存管理,然后分配大的SORT_AREA_SIZE和HASH_AREA_SIZE(50%甚至80%内存,要确保无其他用户使用),这样能大大加快系统运行速度,又不影响白天高峰期对系统造成的影响。
 操作命令
 
  会话级更改
  ALTER SESSION SET WORKAREA_SIZE_POLICY = {AUTO | MANAUL};
  ALTER SESSION SET SORT_AREA_SIZE = 65536;
  ALTER SESSION SET HASH_AREA_SIZE = 65536;
 学以致用
  1,排序区:
  pga_aggregate_target为100MB,单个查询能用到5%也就是5MB时排序所需时间
  SQL> create table sorttable as select * from all_objects;
  表已创建。
  SQL> insert into sorttable (select * from sorttable);
  已创建49735行。
  SQL> insert into sorttable (select * from sorttable);
  已创建99470行。
  SQL> set timing on;
SQL> set autotrace traceonly;
  SQL> select * from sorttable order by object_id;
  已选择198940行。
  已用时间:  00: 00: 50.49
  Session级修改排序区为30mb所需时间
  SQL> ALTER SESSION SET WORKAREA_SIZE_POLICY = MANUAL;
  会话已更改。
  已用时间:  00: 00: 00.02
  SQL> ALTER SESSION SET SORT_AREA_SIZE = 30000000;
  会话已更改。
  已用时间:  00: 00: 00.01
  SQL> select * from sorttable order by object_id;
  已选择198940行。
  已用时间:  00: 00: 10.76
  可以看到所需时间从50.49秒减少到10.31秒,速度提升很明显。
  2,散列区:
  pga_aggregate_target为1


相关文档:

获取Oracle 表信息 整成数据字典

 今天XXX说要把Oracle 里的几张表重新整理下,呵呵 结果阿发现10来张表还真是说多不多说少一点都不少 。因为表里面的commet已经填上了 。偷懒的想法顿时出现嘎嘎
select t.COLUMN_NAME 字段名, t.DATA_TYPE||'('||t.DATA_LENGTH||')' 字段类型,t.NULLABLE 是否为空,t.DATA_DEFAULT 默认值,p.comments 字段说明
fro ......

Oracle:pl/sql 异常处理[转]


pl/sql 提供了强大而灵活的手段来捕捉和处理程序产生的异常,从而使 oracle 的用户远离一些令人烦恼的 bug 。
 
pl/sql 异常处理的概念和术语
 
在 oracle 中所有的错误都被认为是不应该发生的异常。一个异常可能是以下 3 种情况的一种:
u       由系统产生的错误(& ......

Oracle 11g R1 for Linux(RHEL5)安装


1
、安装前的准备
1.1
检查硬件
物理内存:
# grep
MemTotal /proc/meminfo
交换空间:
# grep
SwapTotal /proc/meminfo
交换空间的大小是根据物理内存的大小来设置的,物理内存少于
2G
的则交换空间设为物理内存的两倍,物理内存大于
2G
的则交换空间和物理内存大小一样。如果不符合上述规定,那么就需要 ......

走近Oracle数据字典(二)

 在上篇文章里“走近Oracle数据字典--数据字典表”,我们谈到了数据字典对于我们作为DBA对数据库维护的重要性。数据库的对象信息,比如表,用户,存储过程,函数,视图,索引等等,这些存在在数据库里的对象的信息,都是在数据字典表里进行维护的,我们可以借用一些比较好的Oracle开发工具比如PLSQL dev或者 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号