1、查询当前用户下的所有表
- select 'alter table '|| table_name ||' move tablespace tablespacename;' from user_all_tables;
2、查询当前用户下的所有索引
- select 'alter index '|| index_name ||' rebuild tablespace tablespacename;' from user_indexes;
3.表查询到的结果中,把tablespace换成具体的名称
- ALTER TABLE ANWEI MOVE TABLESPACE CBS_DEFAULT_DAT;
- ALTER INDEX IDX_CUSTOMERE REBUILD TABLESPACE CBS_DEFAULT_DAT;
移动表或索引带来的问题
表移动到表空间时,可能会引起索引失效,对数据库操作报ORA-01502
解决办法
查看索引是否有效
- select index_name,index_type,tablespace_name,status from user_indexes
如果有索引的STATUS为UNUSABLE,解决办法
- alter index *** rebuild
- 其中***为失效的索引
阅读(1791) | 评论(0) | 转发(0) |