之前的文章我們介紹過對Oracle表空間的創建的實際操作步驟,今天我們要和大家介紹的是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> 連接到:Oracle Database 10g Enterprise Edition Release 10。1。0。2。0 - Production With the Partitioning, OLAP and Data Mining options已導出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集。
注:
將不導出表數據 (行)即將導出可Oracle傳輸表空間元數據。。。對於表空間 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
.正在導出引用完整性約束條件
.正在導出觸發器
.結束導出可Oracle傳輸表空間元數據
成功終止導出, 沒有出現警告。