1.查看表空间里面的对象

SELECT OWNER AS OWNER,
SEGMENT_NAME AS SEGMENT_NAME,
SEGMENT_TYPE AS SEGMENT_TYPE,
SUM (BYTES) / 1024 / 1024 AS SEGMENT_SIZE
FROM DBA_SEGMENTS
WHERE TABLESPACE_NAME = 'TBS'
GROUP BY OWNER, SEGMENT_NAME, SEGMENT_TYPE;

2.里面的普通表按照如下move到新表空间中

move后索引会应为rowid的改变而失效,因此需要重建

alter table owner.tablename move tablespace ntbs;
alter index owner.ix_tablename_id rebuild tablespace ntbs online;

3.里面如果是分区表,按如下move分区到新分区

    SELECT    'ALTER TABLE '
|| table_owner
|| '.'
|| TABLE_NAME
|| ' MOVE PARTITION '
|| PARTITION_NAME
|| ' TABLESPACE NTBS;'
FROM DBA_TAB_PARTITIONS
WHERE TABLE_OWNER = 'OWNER' AND TABLE_NAME = 'TABLE_NAMES';

如果这个表是自动分区的,修改新增分区默认表空间

SELECT    'alter table '
|| owner
|| '.'
|| table_name
|| ' modify default attributes tablespace NTBLS;'
FROM DBA_TABLES
WHERE OWNER = 'OWNER' AND TABLE_NAME = 'TABLE_NAME';

4.里面如果是普通索引,按如下重建索引

alter index owner.tablename REBUILD TABLESPACE NTBS ONLINE;

如果online遇到如下错误

  • 第 1 行出现错误:
  • ORA-00604: 递归 SQL 级别 1 出现错误
  • ORA-01450: 超出最大的关键字长度 (3215)

那么不加online即可(oracle规定一个数据块中至少存放一个索引节点,详细可参考https://blog.csdn.net/yidian815/article/details/16336911

5.例如如果是分区索引,按如下重建索引

SELECT    'ALTER INDEX '
|| index_owner
|| '.'
|| index_name
|| ' REBUILD PARTITION '
|| PARTITION_NAME
|| ' TABLESPACE NTBS ONLINE;'
FROM DBA_ind_PARTITIONS
WHERE index_owner = 'index_owner' AND INDEX_NAME = 'index_name';

如果分区为自增分区,修改分区索引的默认表空间

SELECT    'ALTER INDEX '
|| owner
|| '.'
|| index_name
|| ' modify default attributes tablespace ntbs;'
FROM dba_indexes
WHERE OWNER = 'index_owner' AND INDEX_NAME = 'index_name';

最新文章

  1. 利用StringEscapeUtils对字符串进行各种转义与反转义(Java)
  2. bootstrap-datetimepicker 日期控件的开始日期
  3. C#学习系列-String与string的区别
  4. 用FLASH,安智和IOS打电话方法
  5. LVS+Keepalived负载均衡配置
  6. Jquery EasyUI封装简化操作
  7. openerp权限设置总结
  8. Dice (III) 概率dp
  9. org.springframework.beans.factory.BeanCreationException: 求教育!
  10. 04747_Java语言程序设计(一)_第4章_数组和字符串
  11. hdu1059(多重背包)
  12. 打造“黑客“手机--Kali Nethunter
  13. 关于Block的使用和5点注意事项
  14. APP,H5测试要点
  15. Django与ajax、分页器
  16. 【洛谷4770】 [NOI2018]你的名字(SAM,线段树合并)
  17. 第一节 简单的jsp实例
  18. Java之.jdk安装-Windows
  19. Go Example--原子计数器
  20. 输出图中顶点i到顶点j之间的所有简单路径

热门文章

  1. 【Cesium 颜狗初步】fabric 材质定义与自定义着色器实践
  2. 详细讲解docker容器和镜像的区别
  3. .NET生态系统掠影
  4. python 简单逻辑回归实例
  5. python归并排序
  6. 【实时渲染】实时3D渲染如何加速汽车线上体验应用推广
  7. HashMap知识点总结,这一篇算是总结的不错的了,建议看看!
  8. easyui中清空table列表中数据
  9. easyui字典js 切换 jsp页面显示的内容
  10. easyui模板页面 不良调查