oracle之資料泵

liqilin0429發表於2012-02-22
1 資料泵匯出操作之簡要步驟
第一:在本地磁碟上建立目錄
sai
第二:在資料庫裡建立目錄
SQL> create directory dumpdir1 as 'd:\sai';
dumpdir1 這個目錄名必須是唯一的。
sai  這個檔名稱必須提前在本地的磁碟上建立成功
第三:授權
SQL> grant read,write on directory dumpdir1 to scott;
第四:檢視管理理員目錄
SQL>select * from dba_directories;
檢視作業系統是否存在,因為Oracle並不關心該目錄是否存在,如果不存在,則出錯
第五:如果存在需要刪除目錄(可選)
SQL> drop directory dumpdir1 ;
第六:匯出一張表
C:\Users\QiLin>expdp scott/qilin directory=dumpdir1 dumpfile=li.dmp tables=emp

2 原始匯出匯入與資料泵的區別
第一:資料泵工具是從ORACLE 10G引入的
第二:可以通過並行來充分利用系統的CPU和IO資源;
第三:匯入匯出在伺服器端完成,避免了網路傳輸對匯出、匯入速度的影響;而原始匯出匯入即可以在伺服器端操作,有可以再客戶端操作
第四:充分利用直接路徑方式,使得匯入匯出的效率大幅提高;
第五:優化了預設引數,避免由於使用者沒有指定最佳的BUFFER引數而影響匯入匯出效能;
第六:原始匯出匯入與資料泵匯出匯入的檔案“風馬牛不相及“;

3 非歸檔模式轉換為歸檔模式簡要步驟
第一:關閉資料庫
shutdown immediate
第二:啟動資料庫到MOUNT狀態
startup mount
第三:修改資料庫的歸檔模式
alter database archivelog;
第四:啟動資料庫到OPENT狀態
alter database open;
第五:檢視資料庫的歸檔模式
archive log list;
select name,log_mode from v$database;
SQL> show parameter archive
第六:修改資料庫歸檔模式的儲存路徑
alter system set log_archive_dest_1='location=E:\demo\archive_1' scope =both;
4 原始匯出少表的解決辦法
第一 檢視
SQL> show  parameter def
第二 修改為TRUE
ALTER SYSTEM SET deferred_segment_creation=TRUE
第三:官方的介紹
Segment creation on demand, or deferred segment creation as it is also known, is a space saving feature of Oracle Database 11g Release 2. When non-partitioned tables are created, none of the associated segments (table, implicit index and LOB segments) are created until rows are inserted into the table. For systems with lots of empty tables, this can represent a large space saving.
The functionality can be controlled by the DEFERRED_SEGMENT_CREATION initialization parameter, which is set to TRUE by default. It can be turned off using the following command.
ALTER SYSTEM SET DEFERRED_SEGMENT_CREATION=[TRUE | FALSE];The CREATE TABLE statement now supports the following segment creation clause.
SEGMENT CREATION { IMMEDIATE | DEFERRED }
 
 
 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/20976446/viewspace-716911/,如需轉載,請註明出處,否則將追究法律責任。

相關文章