Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

45

积分

0

好友

0

主题
1#
发表于 2012-5-14 21:42:05 | 查看: 4841| 回复: 2
Oracle : 10.2.0.4 64bit
OS: RHEL 5.4 64bit

数据库平时是oltp, 月初的时候是olap。在月初时,总是发现有大量的形式如下的语句:
  1. insert into temp_total1
  2.                  select * from tab1
  3.                  union all
  4.                  select * from tab2
  5.                  union all
  6.                  select * from tab3
  7. ...
复制代码


请问下大家这种形式的sql除了加nologing和append外,还有什么可以优化的余地吗?
谢谢。
2#
发表于 2012-5-14 21:46:45
想要什么结果呢????

回复 只看该作者 道具 举报

3#
发表于 2012-5-14 21:56:10
UNION ALL MAY USE Much PGA ,设置较大的 PGA 和 db_file_multiblock_read_count, 启用并行  且提高 direct path read的单次IO count .



set timing on;
alter session set workarea_size_policy=MANUAL;
alter session set workarea_size_policy=MANUAL;

alter session set db_file_multiblock_read_count=512;
alter session set db_file_multiblock_read_count=512;
alter session set events '10351 trace name context forever, level 128';

alter session set sort_area_size=734003200;
alter session set sort_area_size=734003200;

alter session set "_sort_multiblock_read_count"=128;
alter session set "_sort_multiblock_read_count"=128;



alter session enable parallel query;
alter session enable parallel dml;

force the temp_total to be  nologging

alter table xx nologgin;
alter table xx compress x ;

11g 考虑使用 advanced compression 特性

如果可能 考虑为temp_total 启用 压缩, 前提是CPU有富余
为insert 和 select 子查询启用并行

insert /*+ parallel append * / into temp_total1
                 select  /*+ parallel  */ * from tab1
                 union all
                 select * from tab2
                 union all
                 select * from tab3

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-11-15 17:51 , Processed in 0.053360 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569