Páginas

quarta-feira, 15 de agosto de 2012

RESIZE UNDO TABLESPACE


Olá Pessoal,

Hoje vou compartilhar com vocês uma experiência, onde tive que realizar a recriação de uma tablespace de undo.
O datafile da tablespace foi colocado UNLIMITED, ou seja, chegou a 32GB e ao tentar fazer o resize ocorria o ORA-3297 erro: arquivo contém dados usados além do valor de RESIZE solicitado, então tive que criar uma nova tablespace e eliminar a antiga.

Segue o passo a passo realizado:

1- Criar uma nova tablespace de UNDO:

CREATE UNDO TABLESPACE UNDOTBS2 DATAFILE '/u01/oradata/orcl/undotbs2_01.dbf'
SIZE 2048M;

2- Definir a nova tablespace criada como default do banco de dados:

OBS:Podemos ter várias tablespaces de undo criadas, mas apenas 1 delas pode ser a default do banco.

ALTER SYSTEM SET UNDO_TABLESPACE=UNDOTBS2 SCOPE=BOTH;

As novas transações vão utilizar a nova tablespace de undo, depois de um tempo(você deve esperar no mínimo o tempo do parâmetro UNDO_RETENTION).

3- Eliminar a tablespace de UNDO antiga ou realizar o resize:

DROP TABLESPACE UNDOTBS1 INCLUDING CONTENTS AND DATAFILES;

OU

ALTER DATABASE DATAFILE '/u01/oradata/orcl/undotbs1_01.dbf' RESIZE 1M;

Por hoje é só, até o próximo post.

Nenhum comentário:

Postar um comentário