您的位置:首页 > 数据库 > Oracle

Oracle中跨平台传输表空间

2006-07-12 15:13 369 查看
Oracle中的传输表空间功能, 用来将一个实例中的表空间和数据文件移到另一个实例中. 执行起来方便, 快捷.
但是要使用该功能有一些限制:
需要两个平台一致.
必须有相同的字符集和多语言字符集.
要求两个实例的db block size 大小相等, 如不相等则需要兼容9.0以上等.

具体步骤如下:

SQL> alter tablespace example read only;

Tablespace altered

SQL> --example表空间试验
SQL> connect sys/system as sysdba
Connected to Oracle Database 10g Enterprise Edition Release 10.1.0.2.0
Connected as SYS

SQL> execute dbms_tts.transport_set_check('EXAMPLE',TRUE);

PL/SQL procedure successfully completed

SQL> SELECT * FROM TRANSPORT_SET_VIOLATIONS;

VIOLATIONS
--------------------------------------------------------------------------------

SQL> --如果上面的查询可以查到记录,则说明不适合表空间传输条件, 需要根据实际
SQL> --情况将对象移到别的表空间;
SQL>

C:/Documents and Settings/hawk>exp userid='sys/system as sysdba' transport_table
space=y tablespaces=EXAMPLE file ='d:/a.dmp';

Export: Release 10.1.0.2.0 - Production on 星期三 7月 12 14:46:27 2006

Copyright (c) 1982, 2004, Oracle. All rights reserved.

连接到: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options
已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集
注: 将不导出表数据 (行)
即将导出可传输的表空间元数据...
对于表空间 EXAMPLE...
. 正在导出簇定义
. 正在导出表定义
. . 正在导出表 REGIONS
. . 正在导出表 COUNTRIES
. . 正在导出表 LOCATIONS
. . 正在导出表 DEPARTMENTS
. . 正在导出表 JOBS
. . 正在导出表 EMPLOYEES
. . 正在导出表 JOB_HISTORY
. . 正在导出表 CUSTOMERS
. . 正在导出表 WAREHOUSES
. . 正在导出表 ORDER_ITEMS
. . 正在导出表 ORDERS
. . 正在导出表 INVENTORIES
. . 正在导出表 PRODUCT_INFORMATION
. . 正在导出表 PRODUCT_DESCRIPTIONS
. . 正在导出表 PROMOTIONS
. . 正在导出表 ORDERS_QUEUETABLE
. . 正在导出表 AQ$_ORDERS_QUEUETABLE_S
. . 正在导出表 AQ$_ORDERS_QUEUETABLE_T
. . 正在导出表 AQ$_ORDERS_QUEUETABLE_H
. . 正在导出表 AQ$_ORDERS_QUEUETABLE_G
. . 正在导出表 AQ$_ORDERS_QUEUETABLE_I
. . 正在导出表 STREAMS_QUEUE_TABLE
. . 正在导出表 AQ$_STREAMS_QUEUE_TABLE_S
. . 正在导出表 AQ$_STREAMS_QUEUE_TABLE_T
. . 正在导出表 AQ$_STREAMS_QUEUE_TABLE_H
. . 正在导出表 AQ$_STREAMS_QUEUE_TABLE_G
. . 正在导出表 AQ$_STREAMS_QUEUE_TABLE_I
. . 正在导出表 TIMES
. . 正在导出表 PRODUCTS
. . 正在导出表 CHANNELS
. . 正在导出表 PROMOTIONS
. . 正在导出表 CUSTOMERS
. . 正在导出表 COUNTRIES
. . 正在导出表 SUPPLEMENTARY_DEMOGRAPHICS
. . 正在导出表 CAL_MONTH_SALES_MV
. . 正在导出表 FWEEK_PSCAT_SALES_MV
. . 正在导出表 SALES
. . 正在导出表 COSTS
. . 正在导出表 MVIEW$_EXCEPTIONS
. . 正在导出表 ONLINE_MEDIA
. . 正在导出表 PRINT_MEDIA
. 正在导出引用完整性约束条件
. 正在导出触发器
. 结束导出可传输的表空间元数据
成功终止导出, 没有出现警告。

C:/Documents and Settings/hawk>
C:/Documents and Settings/hawk>
C:/Documents and Settings/hawk>copy D:/system/ora10g/oradata/ora10g/EXAMPLE01.DB
F d:/EXAMPLE01.DBF
已复制 1 个文件。

--平台转换

当需要在不同的平台上传输表空间时, 需要执行平台转换.

RMAN> convert tablespace example
2> to platform 'Microsoft Windows IA (32-bit)'
3> format 'd:/d1';

启动 backup 于 12-7月 -06
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 启动数据文件转换
输入数据文件 fno=00005 name=D:/SYSTEM/ORA10G/ORADATA/ORA10G/EXAMPLE01.DBF
已转换的数据文件 = D:/D1
通道 ORA_DISK_1: 数据文件转换完毕, 经过时间: 00:00:25
完成 backup 于 12-7月 -06

RMAN> convert datafile 'd:/d1' db_file_name_convert 'd:/d1' 'e:/d.dbf'
2> ;

启动 backup 于 12-7月 -06
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 启动数据文件转换
输出文件名=D:/D1
已转换的数据文件 = E:/D.DBF
通道 ORA_DISK_1: 数据文件转换完毕, 经过时间: 00:00:37
完成 backup 于 12-7月 -06

RMAN>

--在不同的平台上进行传输表空间, 则使用上面的e:/d.dbf 文件.

C:/Documents and Settings/hawk>imp userid='sys/system as sysdba' file='d:/a.dmp'
transport_tablespace=y datafiles='d:/EXAMPLE01.DBF'

Import: Release 10.1.0.2.0 - Production on 星期三 7月 12 15:00:31 2006

Copyright (c) 1982, 2004, Oracle. All rights reserved.

连接到: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options

经由常规路径由 EXPORT:V10.01.00 创建的导出文件
即将导入可传输的表空间元数据...
已经完成 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的导入
. 正在将 SYS 的对象导入到 SYS
IMP-00017: 由于 ORACLE 错误 29349, 以下语句失败:
"BEGIN sys.dbms_plugts.beginImpTablespace('EXAMPLE',6,'SYS',1,0,8192,1,438"
"998,1,2147483645,8,128,8,0,1,0,8,3914340468,1,33,320552,NULL,0,334814,NULL,"
"NULL); END;"
IMP-00003: 遇到 ORACLE 错误 29349
ORA-29349: 表空间 'EXAMPLE' 已存在
ORA-06512: 在 "SYS.DBMS_PLUGTS", line 1728
ORA-06512: 在 line 1
IMP-00000: 未成功终止导入

--因为测试是在同一个实例中进行,所以出现上面的表空间已存在错误.

SQL> alter tablespace example read write;

Tablespace altered

C:/Documents and Settings/hawk>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐