`
tianyihuyidao9
  • 浏览: 164777 次
  • 性别: Icon_minigender_1
  • 来自: 济南
文章分类
社区版块
存档分类
最新评论

oracle中多分区的迁移

 
阅读更多
这周很平静,没有客户的纷纷扰扰。

     前一阵子写了一些有关数据表的压缩的东西,我现在感觉把数据压缩了迁移走,或者直接迁移走也是一种不错的办法。

     现在有这样一张表:

CREATE TABLE TABLE_1

(

   MONTH_ID VARCHAR2(10),

   AREA_ID VARCHAR2(10),

   SERI NUMBER

)

PARTITION BY RANGE(MONTH_ID)

subpartition by list (AREA_ID)

  subpartition template(

      subpartition subpart_290 values ('290'),

      subpartition subpart_919 values ('919'),

      subpartition subpart_917 values ('917'),

      subpartition subpart_910 values ('910'),

      subpartition subpart_913 values ('913'),

      subpartition subpart_916 values ('916'),

      subpartition subpart_915 values ('915'),

      subpartition subpart_914 values ('914'),

      subpartition subpart_911 values ('911'),

      subpartition subpart_912 values ('912'),

      subpartition subpart_default values (default)

  )

(

   PARTITION PART_1 VALUES LESS THAN('201210'),

   PARTITION PART_2 VALUES LESS THAN('201211'),

   PARTITION PART_3 VALUES LESS THAN('201212')

)

       数据是这样的:

 

下载 (4.9 KB)

1 小时前
 

下载 (5.19 KB)

1 小时前
       现在可以将这个表的month_id为“201209”的数据迁移到users表空间去:

ALTER TABLE table_1 MOVE PARTITION part_1 TABLESPACE USERS;

 

下载 (16.37 KB)

1 小时前
      出错了,在网上查了一下应该要先把子分区移走。

ALTER TABLE table_1 MOVE SUBPARTITION part_1_SUBPART_290 TABLESPACE USERS;

ALTER TABLE table_1 MOVE SUBPARTITION part_1_SUBPART_910 TABLESPACE USERS;

ALTER TABLE table_1 MOVE SUBPARTITION part_1_SUBPART_911 TABLESPACE USERS;

ALTER TABLE table_1 MOVE SUBPARTITION part_1_SUBPART_912 TABLESPACE USERS;

ALTER TABLE table_1 MOVE SUBPARTITION part_1_SUBPART_913 TABLESPACE USERS;

ALTER TABLE table_1 MOVE SUBPARTITION part_1_SUBPART_914 TABLESPACE USERS;

ALTER TABLE table_1 MOVE SUBPARTITION part_1_SUBPART_915 TABLESPACE USERS;

ALTER TABLE table_1 MOVE SUBPARTITION part_1_SUBPART_916 TABLESPACE USERS;

ALTER TABLE table_1 MOVE SUBPARTITION part_1_SUBPART_917 TABLESPACE USERS;

ALTER TABLE table_1 MOVE SUBPARTITION part_1_SUBPART_919 TABLESPACE USERS;

     然后在执行下面的:

ALTER TABLE table_1 MODIFY DEFAULT ATTRIBUTES FOR PARTITION part_1

TABLESPACE USERS;

     这是结果:




 

下载 (3.81 KB)

1 小时前
      现在这个分区被转移到了users中。

      如果没有子分区会是什么样?重建这个表,这次不要子分区,只是按照month_id分区,然后执行转移语句:

ALTER TABLE table_1 MOVE PARTITION part_1 TABLESPACE USERS;

      直接成功。这就说明了转移带有子分区的分区表的时候,应该从最低级的子分区开始转移,然后转移上一级的分区。

      那么压缩呢,将上面这个表的part_1压缩,语句如下:

ALTER TABLE table_1 MOVE PARTITION part_1 COMPRESS;

      结果如下:




 

下载 (13.32 KB)

1 小时前
       建立有子分区的表,然后执行刚才的语句:

 

下载 (15.53 KB)

1 小时前
       相同的问题再次出现。也就是说得把子分区先压缩了。但是我今天看到了一个更好用的语句:

ALTER TABLE table_1 MODIFY PARTITION part_1 COMPRESS;

     执行以后结果:

 

下载 (13.82 KB)

1 小时前
       这样就好了。

       今天建立表分区的时候有点忘了语句的写法,这是不对的,这里记录一下:

CREATE TABLESPACE data_warehouse

  DATAFILE 'D:\app\user\oradata\PC1\STORAGE2.DBF'

  SIZE 50M AUTOEXTEND ON NEXT 50M

  MAXSIZE 2048M;

     将用户默认表空间改成刚才建立的表空间:

ALTER USER wings DEFAULT TABLESPACE data_warehouse;

 

下载 (8.31 KB)

1 小时前
  本文作者: wingsless,转自http://www.cnblogs.com/wingsless/archive/2012/10/17/2728586.html
分享到:
评论

相关推荐

    oracle11g expdp impdp 分区表重映射导出导入数据迁移方案

    oracle expdp impdp 分区表重映射导出导入 数据迁移方案,以SI01用户为例子,将用户分区表导出后,将分区表重映射到新的表空间,完成数据迁移和检查。照方案例子按步去做,一定能成功。

    Oracle至PostgreSQL数据库迁移方案.pptx

    "Oracle至PostgreSQL数据库迁移方案" Oracle至PostgreSQL数据库迁移方案是使用Ora2PG工具实现的,该工具是一个Perl语言编写的开源工具,用于将Oracle或MySQL数据库迁移到PostgreSQL数据库。下面是该方案的详细知识...

    ORACLE数据库迁移方案

    Oracle数据库从单机迁移到RAC涉及多个步骤,包括硬件准备、软件安装、数据迁移等。整个过程需要细致规划和严谨执行,以确保迁移的成功率和稳定性。此外,在迁移完成后还需要进行全面的测试和监控,以验证迁移效果并...

    oracle_分区表数据定期迁移到其他数据库测试方案

    本文档中的迁移方案旨在实现将Oracle分区表中的数据定期迁移到另一个数据库。这样的需求可能出于多种考虑,比如数据归档、负载均衡或数据同步等。 ### 三、Oracle 分区表迁移方案概述 该方案主要包括以下几个步骤...

    oracle数据表分区知识

    ### Oracle 数据表分区详解 #### 一、分区表理论知识 Oracle 提供了表分区功能以支持非常大型的数据库(VLDB)。通过分区技术,可以根据指定的分区键将数据分散到不同的物理位置,从而实现更高效的数据管理和查询...

    Oracle大表分区的技术

    在Oracle数据库系统中,分区技术允许将一个大表分解为较小、更易管理的部分,每个部分称为一个分区。这样做有多种好处,包括优化查询速度、改善I/O性能、简化数据管理和备份恢复等。 一、分区类型 1. **范围分区**...

    oracle中锁和表分区

    Oracle数据库中的锁和表分区是两个重要的概念,它们在数据管理与并发控制中起到关键作用。锁用于确保数据的一致性和完整性,而表分区则是一种优化查询性能的技术。 首先,让我们详细了解一下锁。在Oracle中,锁是...

    oracle普通表转化为分区表的方法

    Oracle数据库中的分区表是一种高级的表组织形式,它将大表分成多个较小的部分,每个部分称为一个分区,以提高查询性能和管理效率。当表的大小超过2GB时,官方推荐使用分区表,因为它们在处理大量数据时具有显著优势...

    国产化改造,如何将Oracle数据完整迁移到DM数据库。

    国产化改造,如何将Oracle数据完整迁移到DM数据库。 本文将详细介绍将Oracle数据完整迁移到DM数据库的过程,包括分析待移植系统、数据迁移、PL/SQL移植、移植结果校验、应用系统移植、测试和优化等几个方面的工作。...

    oracle表分区实践

    **文档目的**:本文档旨在明确Oracle分区表的概念,并针对特定业务场景(例如“长安”场景)介绍如何构建分区表。 **阅读对象**:主要包括项目开发人员、项目实施人员及项目设计人员。 **参考文档**:未提供具体...

    物化视图迁移分区

    在Oracle数据库中,可以通过多种方式对表进行分区,例如范围分区、列表分区、散列分区等。 #### 四、案例分析:`FP_SFD_TEST`表的分区设计 根据提供的SQL创建语句,`FP_SFD_TEST`表被定义为一个范围分区表。具体来...

    从Oracle迁移到MySQL经典实战

    Oracle与MySQL的SQL语法在很多地方存在差异,因此,需要对应用程序的SQL语句进行调整,确保在MySQL中能够正确执行。对于复杂的应用逻辑,可能需要重构代码,或者利用MySQL的用户定义函数(UDF)来模拟Oracle的功能。...

    Oracle 数据库 11g 中的分区

    ### Oracle 数据库 11g 中的分区 #### 分区的优势 **提高可管理性**:通过分区,数据库管理员能够更有效地管理大型数据库。每个分区都可以独立管理,这有助于简化维护工作并减少停机时间。 **提高性能**:分区...

    Oracle空间数据库的迁移

    Oracle空间数据库的迁移是数据库管理中的重要环节,尤其在企业级应用中,数据的安全和高效迁移至关重要。Oracle数据库因其强大的功能和稳定性,被广泛应用于地理信息系统(GIS)和其他需要处理空间数据的场景。本篇...

    深入学习分区表及分区索引(详解oracle分区).docx

    以下是对Oracle分区表和分区索引的深入解析: 1. **何时使用分区**: - 当表的数据量超过2GB时,分区有助于避免32位操作系统下的文件大小限制,同时减少大规模数据的备份时间。 - 对于包含历史数据的表,如按月份...

    oracle 普通表转分区表方式

    Oracle 分区表(Partitioned Table)是一种特殊的表结构,可以根据不同的条件将数据分割成多个独立的分区,以提高查询效率和减少存储空间。本文将详细介绍将 Oracle 普通表转换为分区表的方法。 分区表的优点 1. ...

    导入导出 Oracle 分区表数据

    ### 导入导出Oracle分区表数据 #### 一、概述 在Oracle数据库管理中,对分区表进行数据的导入与导出是一项常见的任务。分区技术可以显著提高大型表的性能,尤其是在处理大规模数据集时。为了有效地管理和迁移这些...

    oracle数据迁移

    Oracle 数据迁移是数据库管理中的重要任务,特别是在大型企业环境中,如Acme银行的情况。Lora作为数据库管理员,面临的问题是如何高效地将数据仓库中的数据迁移到多个结构不同的数据集市,以便于不同团队进行分析。...

    Mysql迁移到Oracle就是这么简单

    总的来说,从MySQL迁移到Oracle是一个涉及多个层面的任务,包括数据转换、结构设计、代码调整和性能优化。尽管有一些自动化工具可以减轻工作负担,但整个过程仍需谨慎操作,确保数据完整性和系统稳定性。在实际操作...

    Oracle数据迁移手册

    总的来说,《Oracle数据迁移手册》是数据库管理员的得力助手,它提供了全面的步骤和最佳实践,帮助他们在数据迁移过程中避免常见的问题,确保业务连续性和数据完整性。通过遵循这份手册的指导,管理员可以更加自信地...

Global site tag (gtag.js) - Google Analytics