Документ создан: 16.02.2010

Перемещение таблиц и/или индексов

Объекты и их типы

Наличие объектов и их типы указанной схемы в определённом табличном пространстве

SELECT distinct segment_name
     , segment_type
FROM dba_extents
where owner='SCOTT'
  and tablespace_name='USERS';

Перемещение индекса

Подготовить строку перемещения определённого индекса из одного табличного пространства в другое

SELECT 'alter index '
      ||owner||'.'
      ||segment_name
      ||' rebuild tablespace &NEW_TS;'
FROM dba_extents
where segment_type like 'INDEX%' 
  and owner='&USER'
  and tablespace_name='&OLD_TS'
group by tablespace_name
       , owner
       , segment_name;

Обязательно нужно проверить статус индексов и восстановить UNUSABLE-индексы

Перемещение таблицы

Подготовить строку перемещения определённой таблицы из одного табличного пространства в другое

SELECT 'alter table '
      ||owner||'.'
      ||segment_name
      ||' move tablespace &NEW_TS;'
FROM dba_extents
where segment_type='TABLE'
  and owner='&USER'
  and tablespace_name='&OLD_TS'
group by tablespace_name
       , owner
       , segment_name;

Перемещение LOB-столбца

Подготовить строку перемещения определённого LOB-столбца из одного табличного пространства в другое

select 'alter table '
      ||owner||'.'
      ||table_name
      ||' move tablespace NEW_TS'||chr(10)
      ||'LOB ('||column_name||') store as (tablespace NEW_TS);'
from dba_lobs
where owner='SCOTT'
  and tablespace_name='USERS';
 
Recent changes RSS feed Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki Donate