关于分区表的move操作

简介: 关于分区表的move操作还是很值得深究的一个问题。如果分区表中含有lob字段,难度还会加大。 对于普通的表而言,做move操作室理所当然,oracle提供的方式很直接快捷。
关于分区表的move操作还是很值得深究的一个问题。如果分区表中含有lob字段,难度还会加大。
对于普通的表而言,做move操作室理所当然,oracle提供的方式很直接快捷。当然了这个命令也不是高可用的范畴。但是对于数据重组还是很方便快捷的。


一般来说,如果尝试对分区表进行move操作,会得到如下的错误警告。
SQL> alter table charge move tablespace large_data;
alter table charge move tablespace large_data
            *
ERROR at line 1:
ORA-14511: cannot perform operation on a partitioned object

 
这个时候可以使用如下的sql语句生成动态sql来做partition级别的move操作。
比如对下面3个大表,如下的sql就可以生成成百上千条语句来完成partition级别的move操作。

select 'alter table '||table_name||' move partition '||partition_name||' tablespace large_data;' from user_tab_partitions where table_name in ('CHARGE','MEMO','CHARGE_REL')

如果表中含有lob字段,可能会碰到如下的问题

alter table memo move partition xxxx tablespace large_data;

           *
ERROR at line 1:
ORA-01658: unable to create INITIAL extent for segment in tablespace DATAS01

 碰到这种问题,一般有以下的几种原因,一种需要查看quota的情况,是否在对应的表空间中含有足够的quota
一种就是查看表空间的存储情况,是否有足够的空间。
如果空间有限,而且有的分区没有数据,可以开启延迟加载的方式。启用deferred_segment


expdp/impdp
使用数据泵是一种很好的选择,可以很方便的进行数据结构的dump到处,然后在导入的时候直接做remap_tablespace,这个功能是exp/imp所无法企及的。
推荐使用impdp的remap功能。

perl/shell
当然了,可以利用exp+imp+shell/perl的方式来解析dump文件
可以参考如下的博文。
http://blog.itpub.net/23718752/viewspace-1160404/
里面详细讨论了解析dump文件的一些细节。

dbms_metadata.get_ddl
如果源shema可以随时访问到,在条件允许的时候可以直接通过dbms_metadata来生成对应的创建语句,可以在此基础上进行表空间的重新手工mapping。
这个过程看似简单,其实还要考虑很多的细节。分区的分区太多,很容易就超过最大字符长度了,需要自己把握控制。


exchange partition
这种方式可能风险有些大,不过在某些情况下也是一种方案,可以通过exchange partition的形式来完成表空间的重新映射。
使用普通表来和分区做一个交换。

不过以上的方法都不太适合高可用的情况,不过downtime的时间也是需要考虑的,需要最大程度的减少操作时间,毕竟使用分区表的环境中,数据都是很大的,这个也需要大家斟酌。表空间的变更是目的,但是数据的重组就牵扯了数据的导出,导入之类的工作,大道至简,但是细节太多,还是需要多加注意。
 

目录
相关文章
|
前端开发 JavaScript NoSQL
6款 Retool 最佳替代方案
本篇文章的目的通过低代码平台使用者的视角引出细节,了解他们为什么使用低代码平台以及会选择哪个低代码平台来加速内部系统的开发。
1037 0
6款 Retool 最佳替代方案
|
小程序 开发者
微信小程序发布新版本,如何提示强制更新!
微信小程序发布新版本,如何提示强制更新!
微信小程序发布新版本,如何提示强制更新!
|
存储 监控 数据挖掘
【软件测试】Jmeter性能测试(性能测试,Jemeter使用与结果分析2)
【软件测试】Jmeter性能测试(性能测试,Jemeter使用与结果分析)
【软件测试】Jmeter性能测试(性能测试,Jemeter使用与结果分析2)
|
存储 人工智能 iOS开发
Adobe illustrator2023最新免费版下载及功能介绍AI2023
Adobe Illustrator (AI 2023)是Adobe在设计行业生产的最受欢迎的矢量图形软件之一,它已经成为行业标准之一。全球数百万设计师和艺术家正在使用Illustrator进行设计和艺术创作。Illustrator广泛应用于平面设计、标志设计、图标设计、书籍插图、包装设计、印刷、广告设计和插画设计。
2497 0
|
人工智能 IDE 物联网
物联网太难 ? 不妨试试用Python来开发
Python作为一门快速发展的解释性编程语言,数以百万计的开发者已经将Python应用在人工智能、游戏开发、数据挖掘、信息安全、系统运维等行业并取得了成功。
物联网太难 ? 不妨试试用Python来开发
|
人工智能 安全 物联网
阿里云认证证书有含金量吗?考哪个比较好?
随着信息技术不断发展,我们的生活越来越智能化,而各大企业更是抓住了这个发展浪潮,让企业纷纷上云,这也就导致行业需要大量人才,让企业能第一眼看到你的方法就是考取阿里云认证证书,下面就和小编一起了解一下吧。
826 0
阿里云认证证书有含金量吗?考哪个比较好?
|
传感器 数据采集 测试技术
APP耗电量测试白皮书(二)
APP耗电量测试白皮书(二)
692 0
APP耗电量测试白皮书(二)
|
存储 监控 前端开发
APM 组件选型
常用监控手段: 按监控层次分:业务监控、应用监控和基础监控等; 按监控日志来源分:基于日志文件监控、基于数据库监控和基于网络监控等; 按监控领域分:前端监控、后端监控、全链路监控、业务间监控等; 按监控目标分:系统故障监控、业务指标监控、应用性能监控、用户行为监控、安全合规监控等。
APM 组件选型
|
存储 云安全 弹性计算
深度解读企业云上办公利器「无影云电脑」
信息化进程高速发展的今天,用户桌面办公的需求正不断发生变化:远程办公,BYOD的需求不断增长;快速交付,高效运维的需求接连上升;数据及网络安全的关注度持续提高;整体办公成本在进一步优化。相对而言,云上办公成为了企业首要的关注点。
1091 0
深度解读企业云上办公利器「无影云电脑」