將用戶當前表空間中的表和索引遷移到另一個表空間

查看INV用戶的對象的存儲情況
select * from dba_segments ds where ds.owner='INV';
--default tablespace users

創建表空間INV
create tablespace inv datafile '/oradata/ocm/inv01.dbf ' size 200M autoextend on next 10m maxsize 2048M extent management local segment space management auto;
設置默認表空間爲INV
alter user inv default tablespace inv;


set linesize 200
set pagesize 2000
set term off verify off head off feedback off echo off

spool mtiddl.sql

select 'alter ' ||ds.segment_type || ' '|| ds.owner||'.' || ds.segment_name || ' ' ||
       decode(segment_type, 'TABLE', 'MOVE', 'INDEX', 'REBUILD') ||
       ' tablespace INV;'
  from dba_segments ds
 where ds.owner = 'INV'
   AND (segment_type = 'INDEX' OR segment_type = 'TABLE');

spool off
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章