网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > 数据库技术 > Oracle > 入门基础 > 数据库知识:Oracle中传输表空间  

数据库知识:Oracle中传输表空间

2006-09-15  作者:网管整理  来源:bitsCN.com  点评 投稿 收藏

Oracle中的传输表空间功能,用来将一个实例中的表空间和数据文件移到另一个实例中。 执行起来方便,快捷。但是要使用该功能有一些限制:需要两个平台一致,必须有相同的字符集和多语言字符集。

要求两个实例的db block size 大小相等,如不相等则需要兼容9.0以上等。

具体步骤如下:

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. 
网管网www.bitscn.com

连接到: 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
. 正在导出引用完整性约束条件
. 正在导出触发器
      . 结束导出可传输的表空间元数据 

网管网www.bitscn.com

成功终止导出, 没有出现警告。

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 个文件。 网管下载dl.bitscn.com 

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 

网管联盟bitsCN_com

经由常规路径由 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> 网管下载dl.bitscn.com


TAGs   空间   传输   知识   数据库   导出   正在   AQ   and   Settings   Documents      
 上一篇:Oracle初学者必知的100个问题   下一篇:没有了
数据库知识:Oracle中传输表空间 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: