Partition-方案四:通过 DBMS_REDEFINITION 方法

本文介绍了如何使用DBMS_REDEFINITION在不中断应用的情况下,将普通表转换为分区表。详细步骤包括创建临时分区表结构、检查可行性、开始重定义、同步临时表、完成重定义以及删除临时表。在过程中需要注意统计信息的收集和数据的准确性。
摘要由CSDN通过智能技术生成

方案四:通过 DBMS_REDEFINITION 方法

此种方式可以在线将普通表转换为分区表,不需要停应用。
1. Create the Partition Table structure required, known as the Interim table.

CREATE TABLE WZ_REAL_DATA_tmp4 
    (STIME DATE NOT NULL,
    PI_AI_POINT VARCHAR2(30) NOT NULL,
    FVALUE NUMBER(16,4),
     CONSTRAINT PK_WZ_REAL_DATA4 PRIMARY KEY (STIME,PI_AI_POINT))
  partition by range (stime)
 (partition p1_2012 values less than (to_date('2013-01-01','yyyy-mm-dd')),
  partition p1_2013 values less than (to_date('2014-01-01','yyyy-mm-dd')),
  partition p1_2014 values less than (to_date('2015-01-01','yyyy-mm-dd')),
  partition p1_2015 values less than (to_date('2016-01-01','yyyy-mm-dd')),
  partition p_max values less than (maxvalue)) tablespace XDWZJS;

2. Execute DBMS_REDEFINITION.can_redef_table…

grant EXECUTE_CATALOG_ROLE,CREATE ANY TABLE,ALTER ANY TABLE,DROP ANY TABLE,LOCK ANY TABLE,SELECT ANY TABLE to xdwz;
SQL> EXEC Dbms_Redefinition.can_redef_table('XDWZ','WZ_REAL_DATA');
BEGIN Dbms_Redefinition.can_redef_table('XDWZ','WZ_REAL_DATA'); END;

      *
ERROR at line 1:
ORA-06550: line 1, column 7:
PLS-00201: identifier 'DBMS_REDEFINITION' must be declared
ORA-06550: line 1, column 7:
PL/SQL
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值