我很好奇这是否可能。
如果我当前的分区有一个基于的列表分区,col1
并且想将我的分区结构移动到基于的分区col2
,我是否需要重新创建表,删除旧表并重命名新表?
或者有没有更简单的方法。
您确实需要物理移动这些行,因为关于分区的全部要点是这些行位于同一位置。但是,有一种更简单的方法可以实现这一点。我认为在线重新定义是解决这个问题的方法。它不仅需要您提供较少的保姆服务,它还维护了表格的临时版本,允许用户继续使用表格。
简而言之,过程是:使用新的分区方案创建表的空版本,并让 DBMS_REDEFINITION 发挥它的魔力。 了解更多。
(注意:我从未真正使用过这种方法来更改分区键:但我已经用它来将非分区表转换为分区表,我不明白为什么它不应该也适用于您的场景) .