Re: NOLOGGING recovery errors

  • From: Hemant K Chitale <hemantkchitale@xxxxxxxxx>
  • To: lyallbarbour@xxxxxxxxxxxxxxx
  • Date: Tue, 7 Dec 2010 08:29:45 +0800

An ALTER INDEX  ..... REBUILD attempts to re-read the existing index *unless
it is UNUSABLE*.

So, for indexes that are not enforcing PK constraints, do an ALTER INDEX
..... UNUSABLE before the REBUILD.
For indexes that are for PK constraints, disable the constraints before
setting them UNUSABLE.

Needless to say, I suggest NOLOGGING for the REBUILD.  If you also use
PARALLEL then set them to NOPARALLEL after the REBUILD.

Enable the constraints after the REBUILD.

Hemant K Chitale
http://hemantoracledba.blogspot.com
sent from my smartphone

On Dec 7, 2010 12:05 AM, <lyallbarbour@xxxxxxxxxxxxxxx> wrote:

Hi,
  I rebuilt some indexes on our production database yesterday with
NOLOGGING.  They took a cold back up.  But this morning when we refreshed
our test instance, they refreshed with the hot backup, so after applying the
archive logs, we are getting corrupt block errors.  I'm trying to rebuild
the indexes, drop then create from the ddl, but i'm having a hard time with
the script, since we are on 10.2.0.4  How can i generate the ddl for

alter table disable constraint -- then
drop index

for all these primary keys?  I'm sure this is on google somewhere, but i
haven't found it yet.

Thanks,
Lyall

Other related posts: