Oracle数据库表调整表空间

前端之家收集整理的这篇文章主要介绍了Oracle数据库表调整表空间前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

内容

  1. 调整表 table 所属表空间
  2. 调整索引 index 所属表空间

脚本

// 生成table迁移语句@H_403_12@
select@H_403_12@ 'alter table '@H_403_12@|| table_name ||' move tablespace 新表空间名;'@H_403_12@  from@H_403_12@ user_all_tables; 

// 生成index迁移语句@H_403_12@
select@H_403_12@ 'alter index '@H_403_12@|| index_name ||' rebuild tablespace 新表空间名;'@H_403_12@ from@H_403_12@ user_indexes;

执行生成的迁移脚本完成表空间修改

大字段索引迁移问题

含有CLOB、BLOB字段的表索引在迁移过程会发生错误

// 查询含有打字段的表、索引信息
SELECT@H_403_12@ INDEX_NAME,TABLESPACE_NAME,TABLE_NAME FROM@H_403_12@ USER_INDEXES WHERE@H_403_12@ INDEX_TYPE='LOB'@H_403_12@;@H_403_12@

// 调整大字段存储位置
ALTER@H_403_12@ TABLE@H_403_12@ 表名 MOVE LOB(字段名) STORE AS@H_403_12@ (TABLESPACE 新表空间名);@H_403_12@

参考

ORACLE修改表空间方法 - 茄子_2008 - 博客园

原文链接:https://www.f2er.com/oracle/206933.html

猜你在找的Oracle相关文章