Oracle中的傳輸表空間功能用來將一個實例中的表空間和數據文件移到另一個實例中 執行起來方便快捷但是要使用該功能有一些限制需要兩個平台一致必須有相同的字符集和多語言字符集
要求兩個實例的db block size 大小相等如不相等則需要兼容以上等
具體步驟如下
SQL> example表空間試驗
SQL> connect sys/system as sysdba
Connected to Oracle Database g Enterprise Edition Release
Connected as SYS
SQL> execute dbms_ttstransport_set_check(EXAMPLETRUE);
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:\admp;
Export: Release Production on 星期三 月 ::
Copyright (c) Oracle All rights reserved
連接到: Oracle Database g Enterprise Edition Release Production
With the Partitioning OLAP and Data Mining options
已導出 ZHSGBK 字符集和 ALUTF 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\orag\oradata\orag\EXAMPLEDB
F d:\EXAMPLEDBF
已復制 個文件
C:\Documents and Settings\hawk>imp userid=sys/system as sysdba file=d:\admp
transport_tablespace=y datafiles=d:\EXAMPLEDBF
Import: Release Production on 星期三 月 ::
Copyright (c) Oracle All rights reserved
連接到: Oracle Database g Enterprise Edition Release Production
With the Partitioning OLAP and Data Mining options
經由常規路徑由 EXPORT:V 創建的導出文件
即將導入可傳輸的表空間元數據
已經完成 ZHSGBK 字符集和 ALUTF NCHAR 字符集中的導入
正在將 SYS 的對象導入到 SYS
IMP: 由於 ORACLE 錯誤 以下語句失敗:
BEGIN sysdbms_plugtsbeginImpTablespace(EXAMPLESYS
NULLNULL
NULL); END;
IMP: 遇到 ORACLE 錯誤
ORA: 表空間 EXAMPLE 已存在
ORA: 在 SYSDBMS_PLUGTS line
ORA: 在 line
IMP: 未成功終止導入
因為測試是在同一個實例中進行所以出現上面的表空間已存在錯誤
SQL> alter tablespace example read write;
Tablespace altered
C:\Documents and Settings\hawk>
From:http://tw.wingwit.com/Article/program/Oracle/201311/18536.html