`

oracle迁移表到新的表空间

阅读更多
1.创建新的表空间
CREATE TABLESPACE bayonet 
DATAFILE '/oradata/db/bayonet_01.DBF' 
SIZE 2G 
AUTOEXTEND ON NEXT 1G MAXSIZE UNLIMITED LOGGING
EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;


2.修改用户默认表空间
ALTER USER dbuser DEFAULT tablespace bayonet;


3.创建迁移表到新的表空间SQL执行语句
==普通表:
SELECT 'alter table ' ||table_name || ' move tablespace bayonet;'   
FROM user_all_tables   
WHERE tablespace_name='USERS';

--无子分区
SELECT 'alter table ' ||t1.TABLE_NAME || ' move partition '|| t2.PARTITION_NAME ||' tablespace bayonet;'   
FROM user_all_tables t1,USER_TAB_PARTITIONS t2    
WHERE t1.TABLE_NAME=t2.TABLE_NAME AND t2.tablespace_name='USERS' and t2.subpartition_count>0; 


--子分区
SELECT 'alter table ' ||t1.TABLE_NAME || ' move subpartition '|| t2.subpartition_name ||' tablespace bayonet;'   
FROM user_all_tables t1,all_tab_subpartitions t2    
WHERE t1.TABLE_NAME=t2.TABLE_NAME AND t2.tablespace_name='USERS';

SELECT 'alter table ' ||t1.TABLE_NAME || ' modify default ATTRIBUTES FOR partition '|| t2.PARTITION_NAME ||' tablespace bayonet;'   
FROM user_all_tables t1,USER_TAB_PARTITIONS t2    
WHERE t1.TABLE_NAME=t2.TABLE_NAME AND t2.tablespace_name='USERS'; 


4.创建索引重建的SQL执行语句

select 'alter table '||table_name||' disable primary key;' from user_constraints where constraint_type='P' and R_OWNER='DBUSER';

SELECT 'alter index ' ||index_name || ' rebuild  tablespace bayonet;' 
FROM user_indexes  
WHERE index_type='NORMAL' AND DROPPED='NO' AND  
TABLE_NAME IN (
    SELECT TABLE_NAME 
    FROM user_all_tables 
    WHERE tablespace_name='users'
);

select 'alter table '||table_name||' enable primary key;' from user_constraints 
where constraint_type='P' and R_OWNER='DBUSER';




5.创建表分区
-- Create table
create table GPS_POSITION
(
  ID           NVARCHAR2(32) not null,
  CARDNO       NVARCHAR2(32),
  GPSTIME      DATE,
  LONGITUDE    NUMBER,
  LATITUDE     NUMBER,
  E_W          NVARCHAR2(8),
  N_S          NVARCHAR2(8),
  SPEED        NVARCHAR2(16),
  GPSSPEED     NVARCHAR2(32),
  DIRECTION    NVARCHAR2(16),
  MILEAGE      NVARCHAR2(16),
  MILEAGE1     NVARCHAR2(16),
  HIGHT        NVARCHAR2(16),
  TEMPERATURE  NVARCHAR2(16),
  OIL          NVARCHAR2(16),
  PASSENGER    NVARCHAR2(16),
  S0           NVARCHAR2(2),
  S1           NVARCHAR2(2),
  S2           NVARCHAR2(2),
  S3           NVARCHAR2(2),
  S4           NVARCHAR2(2),
  A0           NVARCHAR2(2),
  A1           NVARCHAR2(2),
  A2           NVARCHAR2(2),
  A3           NVARCHAR2(2),
  A4           NVARCHAR2(2),
  RUNTIME      NVARCHAR2(32),
  A_V          NVARCHAR2(8),
  CREATEDATE   DATE default sysdate,
  GPSID        NUMBER,
  NUM          NUMBER,
  WAY          NUMBER,
  TYPE         NUMBER,
  WAYSENTDATE  NUMBER,
  RECEIVEDDATE NUMBER,
  B0           NVARCHAR2(2),
  B1           NVARCHAR2(2),
  B2           NVARCHAR2(2),
  B3           NVARCHAR2(2),
  B4           NVARCHAR2(2),
  B5           NVARCHAR2(2),
  B6           NVARCHAR2(2),
  CITYID       NVARCHAR2(20),
  DATASTATE    NUMBER,
  GPSLOCK      NVARCHAR2(2),
  GPSPOWER     NVARCHAR2(2),
  ADDRESS      NVARCHAR2(200)
)
partition by range (GPSTIME)
subpartition by list (CITYID)
(
  partition P201010 values less than (TO_DATE(' 2010-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
    tablespace bayonet
    pctfree 10
    initrans 1
    maxtrans 255
    storage
    (
      initial 2
      minextents 1
      maxextents unlimited
    )
  (
    subpartition P201010_P600000 values ('600000') tablespace USERS,
    subpartition P201010_P600001 values ('600001') tablespace USERS,
    subpartition P201010_P600002 values ('600002') tablespace USERS,
    subpartition P201010_P600003 values ('600003') tablespace USERS,
    subpartition P201010_P600004 values ('600004') tablespace USERS,
    subpartition P201010_P600005 values ('600005') tablespace USERS,
    subpartition P201010_P600006 values ('600006') tablespace USERS,
    subpartition P201010_P600007 values ('600007') tablespace USERS,
    subpartition P201010_P600008 values ('600008') tablespace USERS,
    subpartition P201010_P600009 values ('600009') tablespace USERS,
    subpartition P201010_P600010 values ('600010') tablespace USERS,
    subpartition P201010_P600011 values ('600011') tablespace USERS,
    subpartition P201010_P600012 values ('600012') tablespace USERS,
    subpartition P201010_P600013 values ('600013') tablespace USERS,
    subpartition P201010_P600014 values ('600014') tablespace USERS,
    subpartition P201010_P600015 values ('600015') tablespace USERS,
    subpartition P201010_P600016 values ('600016') tablespace USERS,
    subpartition P201010_P600017 values ('600017') tablespace USERS,
    subpartition P201010_P600018 values ('600018') tablespace USERS,
    subpartition P201010_P600019 values ('600019') tablespace USERS,
    subpartition P201010_P600020 values ('600020') tablespace USERS
  ),
  partition P201112 values less than (TO_DATE(' 2011-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
    tablespace bayonet
    pctfree 10
    initrans 1
    maxtrans 255
  (
    subpartition P201112_P600000 values ('600000') tablespace USERS,
    subpartition P201112_P600001 values ('600001') tablespace USERS,
    subpartition P201112_P600002 values ('600002') tablespace USERS,
    subpartition P201112_P600003 values ('600003') tablespace USERS,
    subpartition P201112_P600004 values ('600004') tablespace USERS,
    subpartition P201112_P600005 values ('600005') tablespace USERS,
    subpartition P201112_P600006 values ('600006') tablespace USERS,
    subpartition P201112_P600007 values ('600007') tablespace USERS,
    subpartition P201112_P600008 values ('600008') tablespace USERS,
    subpartition P201112_P600009 values ('600009') tablespace USERS,
    subpartition P201112_P600010 values ('600010') tablespace USERS,
    subpartition P201112_P600011 values ('600011') tablespace USERS,
    subpartition P201112_P600012 values ('600012') tablespace USERS,
    subpartition P201112_P600013 values ('600013') tablespace USERS,
    subpartition P201112_P600014 values ('600014') tablespace USERS,
    subpartition P201112_P600015 values ('600015') tablespace USERS,
    subpartition P201112_P600016 values ('600016') tablespace USERS,
    subpartition P201112_P600017 values ('600017') tablespace USERS,
    subpartition P201112_P600018 values ('600018') tablespace USERS,
    subpartition P201112_P600019 values ('600019') tablespace USERS,
    subpartition P201112_P600020 values ('600020') tablespace USERS,
    subpartition P201112_P600021 values ('600021') tablespace USERS,
    subpartition P201112_P600022 values ('600022') tablespace USERS,
    subpartition P201112_P600023 values ('600023') tablespace USERS,
    subpartition P201112_PSUB_DEF values (default) tablespace USERS
  ),
  partition P201201 values less than (TO_DATE(' 2012-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
    tablespace bayonet
    pctfree 10
    initrans 1
    maxtrans 255
  (
    subpartition P201201_P600000 values ('600000') tablespace USERS,
    subpartition P201201_P600001 values ('600001') tablespace USERS,
    subpartition P201201_P600002 values ('600002') tablespace USERS,
    subpartition P201201_P600003 values ('600003') tablespace USERS,
    subpartition P201201_P600004 values ('600004') tablespace USERS,
    subpartition P201201_P600005 values ('600005') tablespace USERS,
    subpartition P201201_P600006 values ('600006') tablespace USERS,
    subpartition P201201_P600007 values ('600007') tablespace USERS,
    subpartition P201201_P600008 values ('600008') tablespace USERS,
    subpartition P201201_P600009 values ('600009') tablespace USERS,
    subpartition P201201_P600010 values ('600010') tablespace USERS,
    subpartition P201201_P600011 values ('600011') tablespace USERS,
    subpartition P201201_P600012 values ('600012') tablespace USERS,
    subpartition P201201_P600013 values ('600013') tablespace USERS,
    subpartition P201201_P600014 values ('600014') tablespace USERS,
    subpartition P201201_P600015 values ('600015') tablespace USERS,
    subpartition P201201_P600016 values ('600016') tablespace USERS,
    subpartition P201201_P600017 values ('600017') tablespace USERS,
    subpartition P201201_P600018 values ('600018') tablespace USERS,
    subpartition P201201_P600019 values ('600019') tablespace USERS,
    subpartition P201201_P600020 values ('600020') tablespace USERS,
    subpartition P201201_P600021 values ('600021') tablespace USERS,
    subpartition P201201_P600022 values ('600022') tablespace USERS,
    subpartition P201201_P600023 values ('600023') tablespace USERS,
    subpartition P201201_PSUB_DEF values (default) tablespace USERS
  )
);
分享到:
评论

相关推荐

    oracle查询表空间状态及迁移表.zip_oracle_oracle查询表空间状态_oracle迁移表_状态空间

    迁移表到另一个表空间通常涉及创建一个新的表空间,然后将表的所有数据和元数据移动到新的位置。这通常在以下情况下进行:表空间满载、优化性能或满足特定的存储策略。 1. **创建新表空间**: ```sql CREATE ...

    Oracle多个表空间合并成一个表空间,验证通过

    在迁移完成后,还需要确保索引也被正确地调整到了新的表空间中。这可以通过执行以下 SQL 语句来实现: ```sql SELECT 'ALTER INDEX ' || index_name || ' REBUILD TABLESPACE HGZDZX_GZNZJY;' FROM user_indexes ...

    oracle导入时表空间不一致解决方法

    通过上述步骤,我们不仅解决了Oracle导入时表空间不一致的问题,还确保了数据能够顺利地从源系统迁移到目标系统中。在实际操作过程中,需要注意细节处理,尤其是表空间名称的替换以及权限的调整,这些都是保证数据...

    记使用Oracle SQL Developer 迁移MySql 数据至 Oracle.docx

    总结来说,从MySQL到Oracle的数据迁移是一个涉及多个步骤的过程,需要正确配置和管理数据库环境,确保用户和表空间设置正确,并且使用像SQL Developer这样的工具来简化迁移。在迁移过程中遇到问题时,要逐一排查,如...

    表空间(数据文件)迁移.docx

    Oracle 表空间数据文件迁移 Oracle 表空间数据文件迁移是指将表空间中的数据文件从一个路径迁移到另一个路径,以扩容或重组数据文件。这种操作可以在线或者离线进行,以下是两种方法的详细步骤。 在线迁移 在线...

    Oracle 11.2.0.4 迁移到Oracle 12.2.0.1

    "Oracle 11.2.0.4 迁移到 Oracle 12.2.0.1 数据库...Oracle 11.2.0.4 迁移到 Oracle 12.2.0.1 需要遵循详细的步骤,以确保数据的安全和完整性,同时也需要注意 Oracle 12c 中的新功能和特性,以提高业务效率和灵活性。

    2020_Oracle19c数据迁移图文详解.docx

    - **创建新的表空间**: 如果目标数据库缺少特定的表空间,可以在导入数据之前创建相应的表空间。 - **使用数据泵参数**: 在执行数据导入时,可以指定表空间映射(`TABLESPACE_MAPPING`)参数来解决表空间不一致的问题...

    ORACLE修改表空间方法

    4. **移动表空间**:有时你可能需要将表空间的位置迁移到另一个文件系统或存储设备。这可以通过`ALTER DATABASE`命令实现: ```sql ALTER DATABASE DATAFILE '路径/旧数据文件名.dbf' RELOCATE TO '路径/新数据...

    Oracle升级迁移实战文章和方案文档汇总-共168篇.xlsx

    如何利用 RMAN 可传输表空间迁移数据库到不同字节序的平台 (Doc ID 1983639.1) 如何利用 RMAN 可传输表空间迁移数据库到不同字节序的平台 (Doc ID 1983639.1) 跨 OS 平台迁移 Oracle DB (Generic Platform) (Doc ID ...

    ORACLE导入数据文件到指定的表空间

    在Oracle数据库管理中,将数据文件导入到指定的表空间是一项常见的操作,这对于数据迁移、备份恢复或测试环境的构建至关重要。"ORACLE导入数据文件到指定的表空间"这个主题涉及了Oracle数据库的导入工具(IMP)、...

    11G祼设备表空间通过RMAN迁移到ASM

    4. 查找要迁移的裸设备表空间:要迁移表空间,首先需要找到对应的裸设备路径。通过查询dba_data_files视图,可以找到裸设备上各个数据文件的名称以及它们所在的表空间。 5. 将表空间置为OFFLINE:在开始迁移之前,...

    oracle数据库迁移

    Oracle 数据库迁移 Oracle 数据库迁移是指将 Oracle 数据库从一个平台迁移到另一...Oracle 数据库迁移是一个复杂的过程,需要注意字符集的设置、用户的导出和导入、表空间的创建和管理、用户的创建和管理等几个方面。

    Oracle 11.2.0.4到Oracle 19.3 PDB XTTS迁移方案测试.doc

    该项目的目的是将表空间 TBS3 从 Oracle 11.2.0.4 迁移到 Oracle 19.3 PDB XTTS 环境中。 在该项目中,我们首先需要准备待迁移的表空间 TBS3。我们创建了一个名为 TEST3 的用户,并将其默认表空间设置为 TBS3。然后...

    oracle 移动表空间

    在Oracle数据库管理系统中,移动表空间是数据库管理员经常需要进行的一项任务,这通常涉及到数据文件、控制文件以及联机重做日志文件的位置迁移。以下是对这些知识点的详细解释: 1. **移动数据文件**: - **ALTER...

    ORACLE数据库表空间传输方式.

    4. **表空间名称唯一性**:目标数据库中不能存在与迁移表空间同名的表空间。 5. **对象限制**:某些特殊类型的对象(如物化视图、基于函数的索引等)无法直接通过表空间传输的方式进行迁移。 #### 四、检测表空间的...

    数据迁移 说明 oracle 数据迁移完整手册

    Oracle 数据迁移是一种常见的数据库管理操作,目的是将 Oracle 数据库从一台服务器迁移到另一台服务器。以下是 Oracle 数据迁移的完整手册,涵盖了迁移方法概述、实现步骤、其他方法等方面的知识点。 一、迁移方法...

    Oracle空间数据库的迁移

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

    Mysql迁移Oracle方案

    在进行MySQL到Oracle的数据迁移之前,首先需要做好一系列的准备工作。 ##### 1.1 导入机 - **安装Oracle 11g数据库**:确保安装过程中正确配置数据库的各项参数,包括数据库实例名、管理端口等。 - **安装MySQL...

    Oracle数据库迁移升级详细步骤.docx

    * 创建用户及用户表空间:创建用户和用户表空间,以便存储数据。 补丁升级 补丁升级是指将现有的Oracle数据库升级到高版本,以获取新的功能和修复已知bug。包括: * 补丁下载:下载最新的补丁文件。 * 补丁安装:...

Global site tag (gtag.js) - Google Analytics