码迷,mamicode.com
首页 > 其他好文 > 详细

将用户当前表空间中的表和索引迁移到另一个表空间

时间:2018-03-28 11:02:45      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:数据库对象   迁移   oracle   

查看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

将用户当前表空间中的表和索引迁移到另一个表空间

标签:数据库对象   迁移   oracle   

原文地址:http://blog.51cto.com/peenboo/2091909

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!