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

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

70

积分

0

好友

22

主题
1#
发表于 2012-5-31 08:54:34 | 查看: 5949| 回复: 3
A 数据库 版本 Oracle 10.2.0.4     (RAC)
用户 user01


table01
table02
table03
table04
table05
...
table032


共32张数据表。


B 数据库 版本 Oracle 9i               (standy by)

用户  user02

table01
table02
table03
table04
table05
...
table032

共32张数据表。


A库的 User01用户下的数据表 和 B库的 User02 的一模一样,由于业务需求 每天执行一个自动任务

首先truncate A库 user01 下其中32张表后将
B库的 32张表通过数据链路的方式 insert 到A库User01

在次过程中会产生大量的 归档日志

如何能够不让其产生归档呢?



我的做法:

1、     设置A库 User01 用户下的32张数据表为nologging模式

alter table  table01  nologging;
alter table  table02  nologging;

      alter table  table03  nologging;
      ......
      alter table  table32  nologging;


2、修改了 A库的 job 脚本 ,在insert /*+ append */ into  

结果 :归档日期 依然没有较少还和原来一样。


请问大家 我的步骤哪里有错误?

还有没有其他的思路可以来解决这个问题呢?

我也可以尝试去调整我的现有模式但就是没有思路   :(
2#
发表于 2012-6-4 09:19:43
而且我查询了

SQL> select FORCE_LOGGING from v$database;

FOR
---
NO

回复 只看该作者 道具 举报

3#
发表于 2012-6-4 09:34:56
表上有没有索引?append+nologging对索引是不会起作用的,索引一样会产生redo。

回复 只看该作者 道具 举报

4#
发表于 2012-6-4 09:36:07
action plaN;

手动重现你的问题, 执行以下SQL 并贴出输出

select name, my.value
  from v$mystat my, v$statname st
where my.statistic# = st.statistic#
and st.name like '%redo%';


运行你的加入append的 INSERT 语句!!


select name, my.value
  from v$mystat my, v$statname st
where my.statistic# = st.statistic#
and st.name like '%redo%';


运行你的没有加入append的 INSERT 语句!!

select name, my.value
  from v$mystat my, v$statname st
where my.statistic# = st.statistic#
and st.name like '%redo%';

回复 只看该作者 道具 举报

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

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

GMT+8, 2024-11-15 20:02 , Processed in 0.048818 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

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