关闭

ORACLE MOVE表空间

804人阅读 评论(0) 收藏 举报
分类:

move一个表到另外一个表空间时,索引不会跟着一起move,而且会失效(LOB类型例外)。做表空间转移之前,被转移表的用户必须在目的表空间上有使用表空间的权限,否则会报错:ORA-01950: no privileges on tablespace...

表move分为

1.普通表move

2.分区表move

3.LONG

4.LOB大字段类型move

5.索引的move通过rebuild来实现


首先检查表空间有哪些表

select   table_name   from user_tables where tablespace_name = 'LOADTBS' order by table_Name;


select   table_name ,PARTITION_NAME  from useR_TAB_PARTITIONS where tablespace_name = 'LOADTBS' order by table_Name;


一、move普通表、索引

1、基本语法:

a、alter table table_name t move tablespace xxx;

b、alter index index_name rebuild tablespace xxx;

move过的普通表,在不用到失效的索引的操作语句中,语句执行正常,但如果操作的语句用到了索引(主键当做唯一索引),则此时报告用到的索引失效,语句执行失败,其他如外键,非空约束,缺省值等不会失效。

2、重新创建主键或索引基本语法为:

a、alter index index_name rebuild;

b、alter index pk_name rebuild;

3、move索引用rebuild语法:

a、alter index index_name rebuild tablespace tbs_name;

b、alter index pk_name rebuild tablespace tbs_name;

二、move分区表及索引

和普通表一样,分区表索引会失效,区别的仅仅是语法而已。

1、分区基本语法

注:如果是单级分区,则使用关键字PARTITION,如果是多级分区,则使用SUBPARTITION替代PARTITION。

如果分区或分区索引比较大,可以使用并行move或rebuild,PARALLEL (DEGREE 2);

如:

ALTER TABLE PART_ALARM move SUBPARTITION p_01 TABLESPACE users PARALLEL (DEGREE 2);

--全局索引

ALTER INDEX GX1_ PART_ALARM REBUILD tablespace users PARALLEL (DEGREE 2);

--分区索引

ALTER INDEX LX1_ PART_ALARM REBUILD SUBPARTITION p_01 TABLESPACE users1 PARALLEL (DEGREE 2);

ALTER INDEX LX1_ PART_ALARM REBUILD SUBPARTITION p_02 TABLESPACE users2 PARALLEL (DEGREE 2);

………………

ALTER INDEX LX1_ PART_ALARM REBUILD SUBPARTITION p_0n TABLESPACE usersn PARALLEL (DEGREE 2);

2、移动表的某个分区

ALTER TABLE tab_name move PARTITION partition_name TABLESPACE tbs_name;

3、重建全局索引

ALTER INDEX global_index REBUILD;

ALTER INDEX global_index REBUILD tablespace tbs_name;

4、重建局部索引

ALTER TABLE tab_name MODIFY PARTITION partition_name REBUILD UNUSABLE LOCAL INDEXES;

ALTER INDEX local_index_name REBUILD PARTITION partition_name TABLESPACE tbs_name;

 

提示:

USER_PART_TABLES

USER_IND_PARTITIONS

USER_IND_SUBPARTITIONS

USER_LOB_PARTITIONS

USER_LOB_SUBPARTITIONS

USER_PART_INDEXES

USER_PART_LOBS

user_segments

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:571238次
    • 积分:7480
    • 等级:
    • 排名:第2884名
    • 原创:258篇
    • 转载:173篇
    • 译文:0篇
    • 评论:34条
    最新评论