Oracle11gr2資料泵新特性(一)
Oracle的11gr2版本中,並沒有對資料泵做出多大的改動,主要是增加了對原始版本引數的支援,並且去掉了一些小的限制。
這一篇介紹資料泵的Legacy模式。
在11.2中推出的這個功能主要是EXP/IMP工具要逐漸地推出歷史舞臺了。雖然無論從功能上還是從效能上,資料泵匯入匯出都要優於傳統的匯出匯入工具EXP/IMP,但是如果使用者包含了大量的指令碼呼叫EXP,那麼全部遷移到EXPDP方式就會非常麻煩。
而資料庫的LEGACY模式就是為了能將傳統的匯出、匯入方式平滑的遷移到資料泵方式下。
[oracle@bjtest ~]$ expdp yangtk/yangtk file=t.dmp
Export: Release 11.2.0.1.0 - Production on 星期日 9月 6 22:32:43 2009
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
連線到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
由於以下引數, 舊有模式處於活動狀態:
舊有模式引數: "file=t.dmp" 位置: Command Line, 替換為: "dumpfile=t.dmp"
舊有模式設定了 reuse_dumpfiles=true 引數。
舊有模式設定了 nologfile=true 引數。
啟動 "YANGTK"."SYS_EXPORT_SCHEMA_01": yangtk/******** dumpfile=t.dmp reuse_dumpfiles=true nologfile=true
正在使用 BLOCKS 方法進行估計...
處理物件型別 SCHEMA_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的總估計: 4 MB
處理物件型別 SCHEMA_EXPORT/USER
處理物件型別 SCHEMA_EXPORT/SYSTEM_GRANT
處理物件型別 SCHEMA_EXPORT/ROLE_GRANT
處理物件型別 SCHEMA_EXPORT/DEFAULT_ROLE
處理物件型別 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
處理物件型別 SCHEMA_EXPORT/TABLE/TABLE
處理物件型別 SCHEMA_EXPORT/TABLE/INDEX/INDEX
處理物件型別 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
處理物件型別 SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
處理物件型別 SCHEMA_EXPORT/TABLE/COMMENT
. . 匯出了 "YANGTK"."T" 2.886 MB 71968 行
已成功載入/解除安裝了主表 "YANGTK"."SYS_EXPORT_SCHEMA_01"
******************************************************************************
YANGTK.SYS_EXPORT_SCHEMA_01 的轉儲檔案集為:
/data/oracle/admin/test112/dpdump/t.dmp
作業 "YANGTK"."SYS_EXPORT_SCHEMA_01" 已於 22:33:25 成功完成
可以看到,FILE是EXP的引數,由於指定了EXP的——引數,EXPDP自動變成了Legacy模式,為了保持和exp工具完全相同的匯出效果,因此expdp使用了DUMPFILE指定檔名稱,並指定reuse_dumpfiles引數和nologfile引數。
需要說明的是,雖然expdp支援exp的引數,但是匯出仍然是按照EXPDP方式進行的,匯出檔案也是存放在資料庫伺服器上。而且EXPDP無法匯出EXP格式的檔案,IMPDP無法使用EXP匯出的檔案,同樣EXPDP的LEGACY方式匯出的檔案也無法供IMP使用。
還要注意,當前沒有使用DIRECTORY引數,不過這個引數還是必須的,否則就要使用預設值DATA_PUMP_DIR,如果使用者沒有DATA_PUMP_DIR的訪問許可權,就會報錯。當然不過不想透過引數的方式指定DIRECTORY,還可以設定環境變數DATA_PUMP_DIR的值。
在匯出的Legacy方式下,也支援各種資料泵的引數。而對於一些沒有意義傳統引數,比如buffer,則會自動被資料泵所忽略。
最後看一個複雜一點的例子:
SQL> conn yangtk/yangtk
已連線。
SQL> create directory d_output as '/home/oracle';
目錄已建立。
SQL> exit
從 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options 斷開
[oracle@bjtest ~]$ export DATA_PUMP_DIR=d_output
[oracle@bjtest ~]$ expdp yangtk/yangtk file=t.dp tables=t buffer=20480000 compress=n grants=n
Export: Release 11.2.0.1.0 - Production on 星期一 9月 7 00:05:31 2009
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
連線到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
由於以下引數, 舊有模式處於活動狀態:
忽略舊有模式引數: "buffer=20480000" 位置: Command Line。
忽略舊有模式引數: "compress=FALSE" 位置: Command Line。
舊有模式引數: "file=t.dp" 位置: Command Line, 替換為: "dumpfile=D_OUTPUT:t.dp"
資料庫目錄物件 "D_OUTPUT" 已新增到檔案說明: "t.dp"。
舊有模式引數: "grants=FALSE" 位置: Command Line, 替換為: "exclude=grant"
舊有模式設定了 reuse_dumpfiles=true 引數。
舊有模式設定了 nologfile=true 引數。
資料庫目錄物件已預設設定為: "d_output"。
啟動 "YANGTK"."SYS_EXPORT_TABLE_01": yangtk/******** dumpfile=D_OUTPUT:t.dp tables=t exclude=grant reuse_dumpfiles=true nologfile=true
正在使用 BLOCKS 方法進行估計...
處理物件型別 TABLE_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的總估計: 4 MB
處理物件型別 TABLE_EXPORT/TABLE/TABLE
. . 匯出了 "YANGTK"."T" 2.886 MB 71968 行
已成功載入/解除安裝了主表 "YANGTK"."SYS_EXPORT_TABLE_01"
******************************************************************************
YANGTK.SYS_EXPORT_TABLE_01 的轉儲檔案集為:
/home/oracle/t.dp
作業 "YANGTK"."SYS_EXPORT_TABLE_01" 已於 00:05:38 成功完成
再看一個混和IMP和IMPDP引數的例子:
[oracle@bjtest ~]$ impdp yangtk/yangtk file=t.dp buffer=2048000 ignore=y directory=d_output content=data_only
Import: Release 11.2.0.1.0 - Production on 星期一 9月 7 00:21:14 2009
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
連線到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
由於以下引數, 舊有模式處於活動狀態:
忽略舊有模式引數: "buffer=2048000" 位置: Command Line。
舊有模式引數: "file=t.dp" 位置: Command Line, 替換為: "dumpfile=t.dp"
舊有模式引數: "ignore=TRUE" 位置: Command Line, 替換為: "table_exists_action=append"
已成功載入/解除安裝了主表 "YANGTK"."SYS_IMPORT_FULL_01"
啟動 "YANGTK"."SYS_IMPORT_FULL_01": yangtk/******** dumpfile=t.dp table_exists_action=append directory=d_output content=data_only
處理物件型別 TABLE_EXPORT/TABLE/TABLE_DATA
. . 匯入了 "YANGTK"."T" 2.886 MB 71968 行
作業 "YANGTK"."SYS_IMPORT_FULL_01" 已於 00:21:19 成功完成
如果透過連線的方式,可以確保所有的exp備份指令碼不需要修改就可以順利執行:
[oracle@bjtest ~]$ ln -s $ORACLE_HOME/bin/expdp exp
[oracle@bjtest ~]$ ls -l exp
lrwxrwxrwx 1 oracle oinstall 35 Sep 7 00:22 exp -> /data/oracle/product/11.2/bin/expdp
[oracle@bjtest ~]$ ./exp yangtk/yangtk file=t.dp content=metadata_only
Export: Release 11.2.0.1.0 - Production on 星期一 9月 7 00:23:41 2009
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
連線到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
由於以下引數, 舊有模式處於活動狀態:
舊有模式引數: "file=t.dp" 位置: Command Line, 替換為: "dumpfile=D_OUTPUT:t.dp"
資料庫目錄物件 "D_OUTPUT" 已新增到檔案說明: "t.dp"。
舊有模式設定了 reuse_dumpfiles=true 引數。
舊有模式設定了 nologfile=true 引數。
資料庫目錄物件已預設設定為: "d_output"。
啟動 "YANGTK"."SYS_EXPORT_SCHEMA_01": yangtk/******** dumpfile=D_OUTPUT:t.dp content=metadata_only reuse_dumpfiles=true nologfile=true
處理物件型別 SCHEMA_EXPORT/USER
處理物件型別 SCHEMA_EXPORT/SYSTEM_GRANT
處理物件型別 SCHEMA_EXPORT/ROLE_GRANT
處理物件型別 SCHEMA_EXPORT/DEFAULT_ROLE
處理物件型別 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
處理物件型別 SCHEMA_EXPORT/TABLE/TABLE
處理物件型別 SCHEMA_EXPORT/TABLE/INDEX/INDEX
處理物件型別 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
處理物件型別 SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
處理物件型別 SCHEMA_EXPORT/TABLE/COMMENT
已成功載入/解除安裝了主表 "YANGTK"."SYS_EXPORT_SCHEMA_01"
******************************************************************************
YANGTK.SYS_EXPORT_SCHEMA_01 的轉儲檔案集為:
/home/oracle/t.dp
作業 "YANGTK"."SYS_EXPORT_SCHEMA_01" 已於 00:24:23 成功完成
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-614130/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle11gr2資料泵新特性(五)Oracle
- Oracle11gr2資料泵新特性(四)Oracle
- Oracle11gr2資料泵新特性(三)Oracle
- Oracle11gr2資料泵新特性(二)Oracle
- Oracle 12C 資料泵新特性測試Oracle
- Oracle 12C新特性-資料泵新引數(LOGTIME)Oracle
- Oracle 12C新特性-資料泵新引數(VIEWS_AS_TABLES)OracleView
- 10G新特性筆記之資料泵技術筆記
- oracle10G新特性之資料泵匯出/匯入Oracle
- Oracle11gr2分析函式新特性(一)Oracle函式
- Oracle12c中資料泵新特性之功能增強(expdp, impdp)Oracle
- 資料泵
- Oracle12c功能增強新特性之維護&升級&恢復&資料泵等Oracle
- Oracle11gr2分析函式新特性(三)Oracle函式
- Oracle11gr2分析函式新特性(二)Oracle函式
- ORACLE 資料泵Oracle
- oracle資料泵Oracle
- Oracle 資料庫12c新特性總結(一)Oracle資料庫
- 殺停資料泵
- oracle 資料泵解析Oracle
- 資料泵的使用
- 資料泵 impdp 操作
- 資料泵檔案
- 資料泵小bug
- oracle之資料泵Oracle
- Oracle11新特性——PLSQL新特性(一)OracleSQL
- 資料泵引數檔案用於執行資料泵命令
- 資料泵取匯出和匯入(一)
- 用資料泵併發匯入資料的一個案例
- 【12C】資料泵新特性(DISABLE_ARCHIVE_LOGGING+VIEWS_AS_TABLES匯出檢視+LOGTIME)HiveView
- 資料庫升級之-資料泵資料庫
- 使用資料泵impdp匯入資料
- 資料泵造成的資料損失
- Impdp資料泵匯入
- Oracle 資料泵的使用Oracle
- oracle 資料泵引數Oracle
- 資料泵用法筆記筆記
- 關於資料泵impdp引數驗證(一)