`

Oracle分区步骤

阅读更多
1 sqlplus sys as sysdba/
2 online redefine
  2-1 exec dbms_redefinition.can_redef_table('NTSMSALL','T_TEAM');
  2-2 CREATE TABLE NTSMSALL.TMP_T_TEAM…
  CREATE TABLE "NTSMSALL"."TMP_T_TEAM"
  (    "UUID" VARCHAR2(36) NOT NULL ENABLE,
       "CTEAMCODE" VARCHAR2(50) NOT NULL ENABLE,
       "ULINEID" VARCHAR2(36),
       "CLINENAME" VARCHAR2(100) NOT NULL ENABLE,
       "IDAYS" NUMBER(*,0) DEFAULT 1 NOT NULL ENABLE,
       "DBGNDATE" DATE NOT NULL ENABLE,
       "DENDDATE" DATE NOT NULL ENABLE,
       "IGUIDES" NUMBER(*,0) DEFAULT 0,
       "IQTY" NUMBER(*,0) DEFAULT 0,
       "IADULTS" NUMBER(*,0) DEFAULT 0,
       "ICHILDS" NUMBER(*,0) DEFAULT 0,
       "IBABYS" NUMBER(*,0) DEFAULT 0,
       "IOLDS" NUMBER(*,0) DEFAULT 0,
       "COPTYPE" VARCHAR2(12) NOT NULL ENABLE,
       "CAREA" VARCHAR2(10),
       "CNATION" VARCHAR2(400) NOT NULL ENABLE,
       "CTYPE" VARCHAR2(20),
       "CGUESTTYPE" VARCHAR2(10) DEFAULT '中国人',
       "CGUESTNATION" VARCHAR2(20),
       "CGUESTCO" VARCHAR2(70),
       "CSTARTCITY" VARCHAR2(50),
       "CADTITLE" VARCHAR2(80),
       "CLONGTRAFFIC" VARCHAR2(255),
       "CLOCALTRAFFIC" VARCHAR2(255),
       "CHOTELSTANDARD" VARCHAR2(255),
       "CFOODSTANDARD" VARCHAR2(255),
       "CPROGRAMSTANDARD" VARCHAR2(255),
       "CCHILDNOTE" VARCHAR2(255),
       "CFEATURE" CLOB,
       "CSTANDARD" CLOB,
       "CPROMPT" CLOB,
       "CPRICEINCUDE" CLOB,
       "CPRICENOTINCUDE" CLOB,
       "CMEMO" CLOB,
       "UUSERID" VARCHAR2(36) NOT NULL ENABLE,
       "UDEPTID" VARCHAR2(36) NOT NULL ENABLE,
       "UCORPID" VARCHAR2(36) NOT NULL ENABLE,
       "UADMINDIVID" VARCHAR2(36) NOT NULL ENABLE,
       "CSTATUS" VARCHAR2(10),
       "CLOOKSTATUS" VARCHAR2(10) DEFAULT '未审',
       "CLOOKMIND" VARCHAR2(200),
       "ULOOKMANID" VARCHAR2(36),
       "CLOOKTIME" DATE,
       "DCREATE" DATE,
       "DUPDATE" DATE NOT NULL ENABLE,
       "CGUIDEMEMO" VARCHAR2(60),
       "UGUIDEID" VARCHAR2(36),
       "CCARDCODE" VARCHAR2(20),
       "CTRIPMEMO" CLOB,
       "CNEEDAUDIT" VARCHAR2(1) DEFAULT 0,
       "CORP" VARCHAR2(255 CHAR),
       "CBOARDTIME" VARCHAR2(255 CHAR),
       "CINLINENO" VARCHAR2(255 CHAR),
       "CINPORT" VARCHAR2(255 CHAR),
       "COFFTIME" VARCHAR2(255 CHAR),
       "COUTLINENO" VARCHAR2(255 CHAR),
       "COUTPORT" VARCHAR2(255 CHAR),
       "USUPPLIERID" VARCHAR2(255 CHAR))
       partition by range(dbgndate)
       interval(numtodsinterval(1,'day') ) 
       (partition p2011 values less than(to_date ('2012-01-01','yyyy-mm-dd')));
        
SQL> alter table inter_table add constraint pk_inter_table primary key (id);
表已更改。
/*
 SQL> begin
  2  dbms_redefinition.start_redef_table('yangtk', 'orgin_table', 'inter_table', 
  3  'ID ID, FID FID, NAME NEW_NAME, CREATE_DATE CREATE_DATE, ''NO COMMENTS'' COMMENTS', 
  4  DBMS_REDEFINITION.CONS_USE_PK);
  5  END;
  6  /
*/

SQL> select * from (select to_char((dbgndate),'yyyy-mm-dd') from ntsmsall.t_team order by dbgndate desc) bd where rownum<10;

TO_CHAR((DBGNDATE),'
--------------------
5787-10-21
5787-10-20
2015-10-02
2014-07-06
2013-09-02
2013-04-05
2013-02-13
2012-12-24
2012-12-13
Select count(uuid) from ntsmsall.t_team where dbgndate= to_date('5787-10-20', 'yyyy-mm-dd');
update ntsmsall.t_team set dbgndate=to_date('2012-10-20', 'yyyy-mm-dd') where dbgndate= to_date('5787-10-20', 'yyyy-mm-dd');
1 row updated.
Select count(uuid) from ntsmsall.t_team where dbgndate= to_date('5787-10-21', 'yyyy-mm-dd');
update ntsmsall.t_team set dbgndate=to_date('2012-10-21', 'yyyy-mm-dd') where dbgndate= to_date('5787-10-21', 'yyyy-mm-dd');
1 row updated.
2-3 EXEC dbms_redefinition.start_redef_table('NTSMSALL', 'T_TEAM', 'TMP_T_TEAM');
-- tail -n  100 alert_sid.log
2-4 
DECLARE
 error_count pls_integer := 0;
BEGIN
  dbms_redefinition.copy_table_dependents('NTSMSALL', 'T_TEAM', 'TMP_T_TEAM',
                                          0, true, true, true, true,
                                          error_count);
 
  dbms_output.put_line('errors := ' || to_char(error_count));
END;
/
2-5 EXEC DBMS_REDEFINITION.SYNC_INTERIM_TABLE('NTSMSALL', 'T_TEAM', 'TMP_T_TEAM');
2-6 EXEC DBMS_REDEFINITION.FINISH_REDEF_TABLE('NTSMSALL', 'T_TEAM', 'TMP_T_TEAM');
2-6-MUST disable and drop constraints on tmp_t_team + drop table OR
2-7 DROP TABLE NTSMSALL.TMP_T_TEAM CASCADE CONSTRAINTS;
分享到:
评论

相关推荐

    ORACLE表自动按月分区步骤

    分享一个自己学习和实践的关于Oracle表自动按月分区知识点,已经在项目上线并且有效的方案。

    oracle分区表详细讲解

    详细讲解oracle分区表的各个步骤和命令

    ORACLE大表分区

    支持自动ORACLE大表分区: 版本进度: 31. 20110420 V2.2 支持任意表任意时间字段分区 以下为安装部署部分: 1.分区相关脚本部署执行顺序,安装前请确保该用户拥有管理员权限, 同时请执行GRANT CREATE ANY TABLE ...

    Oracle9i的安装步骤(有图解)

    Oracle公司推荐在Windows NT和Windows 2000下安装Oracle数据库,并且磁盘的分区为NTFS格式。但是你也可以使用Windows 98或者Windows XP,磁盘分区也可以是FAT32。 Oracle数据库大体上分为两个版本,一个是运行于...

    Oracle数据库文件移动的方法和步骤

    Oracle数据库在使用过程中,随着数据的增加数据库文件也逐渐增加,在达到一定大小后有可能会造成硬盘空间...本文就以Oracle for Windows版本中把C盘的数据库文件移动到D盘为例介绍Oracle数据库文件移动的方法和步骤。

    ORACLE重建索引总结

    4、索引高度:索引高度是指由于数据行的插入操作而产生的索引层数,当表中添加大量数据时,oracle将生成索引的新层次以适应加入的数据行,因此,oracle索引可能有4层,但是这只会出现在索引数中产生大量插入操作的...

    从一个“普通”的Oracle DBA(Oracle数据库管理员)转变为Oracle Applications DBA(Oracle应用程序数据库管理员)

    庆幸的是,Oracle开发了一个叫做Rapid Clone的工具,步骤归纳如下: • 在每层运行基于perl的脚本语言(创建一个XML文件,里面包含了配置信息,不过对源系统不影响) • 将每层的相关部分复制到目标系统 • 运行基于...

    oracle讲义全内容

    1 oracle10 g数据库安装 启动与关闭 2 Oracle 10g数据库结构 2.3 数据字典 ...9 管理表分区和索引分区 10 导出与导入 11 oracle 10g RMAN使用简介 触发器属性 手工创建数据库完整步骤 行迁移行链接

    Oracle DBA 参考手册

    1.6.5. 步骤#5: 成为解决Oracle问题的专家 16 1.6.6. 步骤#6: 成为性能调优的专家 16 1.6.7. 步骤#7: 成为承载能力计划的专家 17 1.6.8. 步骤#8: 密切关注新的技术 17 1.7. 结论 17 2. DBA工作概述 18 2.1. DBA职责 ...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 第一章 Oracle入门 一、 数据库概述 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前。简单来说是本身可视...

    oracle安装等相关材料

    含详细的oracle安装步骤以及表的分区触发器更新代码,课程小论文

    Oracle 10g应用指导

    书中给出了丰富的图表,多数图例是作者根据多年实践总结出来的,图示简练准确,易于理解,并附有解决问题的具体步骤方法和相应的脚本。读者对象:面向各种培训班学员,高校相关专业的学生, Oracle应用开发人员以及...

    Oracle数据库管理员技术指南

    3.4.1 子分区的导出和导入 3.4.2 导出/导入多个转储文件 3.4.3 为卸载表的导出过程的选择语句 指定一个查询 3.4.4 导出/导入预计算优化程序统计 数据 3.4.5 可移动表空间 3.5 回顾 第4章 设计高可用性数据库...

    一步一步在Linux上部署Oracle 10g R2 RAC

    主要步骤:内含有所有安装软件 一、准备软件 二、配置虚拟机 三、配置/etc/hosts 文件 四、建用户、改口令、修改用户配置文件 五、建路径、改权限 六、修改/etc/security/limits.conf,配置oracle 用户的shell 限制 ...

    ORACLE9i_优化设计与系统调整

    §10.9 是否采用簇和分区 116 §10.10 表和索引的空间预分配 116 §10.11 确定数据库对象存储大小 117 §10.11.1 非簇表的大小计算 117 §10.11.2 索引大小计算 119 §10.11.3 簇表的大小计算 120 §10.11.4 位图...

    Oracle Database 11g初学者指南--详细书签版

    7.2.6 恢复的7个步骤 187 7.2.7 用备份控制文件进行恢复 187 7.3 编写数据库备份脚本 188 7.4 备份归档重做日志 189 7.5 Oracle Data Pump简介 190 7.6 使用Oracle Data Pump Export 191 7.7 使用Oracle Data...

    赤兔Oracle数据库恢复软件 v11.6.zip

    把下载好的安装包解压到当前文件夹,之后双击【EliteOracle .exe】运行文件进行安装,打开的时候会出现安装框,依次开始安装,依照步骤点击下一步,并选择同意协议和软件安装位置即可。     点击【完成】按钮...

Global site tag (gtag.js) - Google Analytics