`

Oracle Transportable Tablespaces (TTS)

 
阅读更多


主要讲一下关于Oracle在线传输表空间的一些注意事项,文中附有示例。

原理分析

使用copy 数据文件+导入metadata的方式迁移数据

可以实现跨平台传输表空间

COLUMNPLATFORM_NAME FORMAT A36
SELECT * FROM V$TRANSPORTABLE_PLATFORM ORDER BY PLATFORM_NAME;

如果发现源、目标数据库的endian不相同,需要使用rman convert 转换,否则不需要

限制

源、目标数据库必须拥有兼容的字符集。

字符集相同

源数据库的字符集必须是目标数据库的子集。(下面必须全部满足)

(1) 源数据库版本必须大于10.1.0.3

(2) 表中的列不包含semantics的定义信息,最大字符长度限制和目标数据库相同。

(3) 不包含clob数据类型,或者两个数据库的字符集同为single-byte orboth multibyte.

两个数据库必须拥有兼容的国家字符集

必须满足下面其中之一

(1)国家字符集相同

(2)source databaseis in version 10.1.0.3 or higher,并且没有NCHAR, NVARCHAR2, or NCLOB类型的数据

目标数据库中不能有相同名称的表空间。(传输之前rename一下)

底层依赖的对象必须全部包含在表空间集合中。

使用场景

1.tablespace+partition

2. 备份数据到cd中

3. 拷贝只读表可能关键到多个数据库

4. 归档历史数据

5. 执行spitr 基于时间点的表空间恢复

在线传输表空间的工作流程(processes)

1. 检查endian format,查看是否需要使用rman convert 转化endian(如果是相同平台可以忽略这一步)。

2. 选择一个自包含的表空间集合。

3. 在源库端,将表空间置为read only模式,并且生成可传输的表空间集合。(export metadatawith transportable tablespace)

4. 传输表空间集合(使用scp或者其他的传输方式将expdp导出的元数据以及数据文件发送到目标服务器上)

5.恢复表空间为read write模式(可选)

6.在目标端,导入表空间结合(import metadata)

示例一

1、查看目标和源端的endian是否相同

test@ORCL>

SELECT d.PLATFORM_NAME, ENDIAN_FORMAT
FROM V$TRANSPORTABLE_PLATFORM tp, V$DATABASE d
WHERE tp.PLATFORM_NAME = d.PLATFORM_NAME;

PLATFORM_NAME ENDIAN_FORMAT
-------------------------------------------------------------------------------------------------------------------
Linux x8664-bit Little

test@ORCL>

SELECT * FROM V$TRANSPORTABLE_PLATFORM ORDER BYPLATFORM_NAME;

PLATFORM_IDPLATFORM_NAME ENDIAN_FORMAT
------------------------------------------------------------------------------------------------------------------------------
6 AIX-Based Systems(64-bit) Big
16 Apple MacOS Big
19 HP IA OpenVMS Little
15 HP OpenVMS Little
5 HP Tru64UNIX Little
3 HP-UX (64-bit) Big
4 HP-UX IA(64-bit) Big
18 IBM Power BasedLinux Big
9 IBM zSeries BasedLinux Big
10 Linux IA(32-bit) Little
11 Linux IA(64-bit) Little
13 Linux x8664-bit Little
7 Microsoft Windows IA(32-bit) Little
8 Microsoft Windows IA(64-bit) Little
12 Microsoft Windows x8664-bit Little
17 Solaris Operating System(x86) Little
20 Solaris Operating System(x86-64) Little
1 Solaris[tm] OE(32-bit) Big
2 Solaris[tm] OE(64-bit) Big

19 rows selected.

这里都是用Linux x86 64-bit 都是little endian 所以不需要使用rman convert 转换

(记得转换前先设置 表空间 read only 状态,保证数据文件在一个一致性的状态)

2、选择自包含的表空间

test@ORCL>

select t.name , d.name from v$tablespace t,v$datafile d where t.ts#=d.ts# ;

NAME NAME
------------------------------------------------------------------------------------------------------------------------
SYSTEM /u01/apps/oracle/oradata/orcl/system01.dbf
UNDOTBS1 /u01/apps/oracle/oradata/orcl/undotbs01.dbf
SYSAUX /u01/apps/oracle/oradata/orcl/sysaux01.dbf
USERS /u01/apps/oracle/oradata/orcl/users01.dbf
EXAMPLE /u01/apps/oracle/oradata/orcl/example01.dbf
IOTTBS /u01/apps/oracle/oradata/orcl/iottbs01.dbf
IOTEXTBS /u01/apps/oracle/oradata/orcl/iotextbs01.dbf
UNDOTBS1 /u01/apps/oracle/oradata/orcl/undotbs02.dbf
DEXTBS /u01/apps/oracle/oradata/orcl/dextbs01.dbf
SQLTDBS /u01/apps/oracle/oradata/orcl/sqlttbs01.dbf

10 rows selected.

传输iotextbs 表空间对应数据文件

/u01/apps/oracle/oradata/orcl/iotextbs01.dbf

如果没有输出,表示是自包含的表空间

sys@ORCL> EXECUTEDBMS_TTS.TRANSPORT_SET_CHECK('iotextbs',true) ;

PL/SQL procedure successfully completed.

sys@ORCL> SELECT * FROM TRANSPORT_SET_VIOLATIONS;

no rows selected
  • 大小: 25.8 KB
分享到:
评论

相关推荐

    基于RMAN+可传输表空间TTS迁移AIX平台数据库到Linux

    1. 可传输表空间(Transportable Tablespaces, TTS)特性:此特性允许数据库管理员在不同数据库之间快速迁移一个或多个表空间,无需进行全库导出和导入。表空间在迁移前需处于只读模式,以确保数据的一致性。 2. ...

    【TTS】AIX平台数据库迁移到Linux环境(真实环境).pdf

    在异构平台之间迁移数据库时,一个有效的方法是通过传输表空间(Transportable Tablespaces, TTS)来实现。传输表空间是一种数据迁移技术,允许数据库管理员将一个数据库中的表空间移动到另一个数据库中。这个过程不...

    XTTS-oracle数据库迁移

    - **Transportable Tablespaces (TTS)**:指能够在不同Oracle数据库之间移动表空间的能力。 - **Cross Platform Transportable Tablespaces (XTTS)**:是在TTS基础上进一步扩展的功能,允许在不同操作系统平台间进行...

    【TTS】传输表空间 Linux_To_AIX_基于rman

    本篇内容主要介绍了如何在Linux和AIX操作系统之间,利用RMAN(Recovery Manager)工具执行【TTS】(Transportable Tablespaces)操作。 在进行【TTS】操作时,通常需要将源表空间设置为【read only】模式,以确保...

    用传输表空间技术升级Oracle数据库.pdf

    本文提到的“传输表空间”(Transportable Tablespaces, TTS)技术是Oracle提供的一种高效、快速的数据库升级手段。该技术允许用户在不同平台或不同版本的Oracle数据库之间迁移数据,而无需进行完整的数据库转换,...

    XTTS系列之一:U2L迁移解决方案之XTTS的使用.docx

    XTTS (Cross Platform Transportable Tablespaces) 是Oracle数据库提供的一种高效的数据迁移工具,尤其适用于不同操作系统或硬件平台之间的迁移。XTTS在标准的Transportable Tablespaces基础上进行了增强,增加了跨...

    Moving your SAP database to Oracle 11gR2 ASM

    这一部分详细介绍了使用可移动表空间(Transportable Tablespaces, TTS)进行迁移的过程。 - **源平台上的步骤**: - **支持的平台**:确认源平台支持TTS迁移。 - **识别需迁移的表空间和数据文件**:明确迁移范围...

    oracle资料

    - **格式**:TRANSPORT_TABLESPACE=export_transportable_tablespace_metadata - **默认值**:N(不导出) ##### TEMPLATE - **描述**:调用 iAS 模式导出的模板名称。 - **格式**:TEMPLATE=template_name_which_...

Global site tag (gtag.js) - Google Analytics