迄今為止,導出/導入工具集仍是跨多個平臺轉移數據所需勞動強度最小的首選實用工具,盡管人們常常抱怨它速度太慢。導入只是將每條記錄從導出轉儲文件中讀出來,然后使用常見的 INSERT INTO 命令將其插入到目標表中,因此導入可能是個很慢的過程,這一點并不讓人感到吃驚。
進入 Oracle Data Pump,Oracle Database 10g 中的導出/導入工具包的更新更快的同類工具,它被設計來成倍地加速這個過程。
Data Pump 反映了整個導出/導入過程的徹底革新。它不是使用常見的 SQL 命令,而是應用專用 API 來以更快得多的速度加載和卸載數據。在我的測試中,我看到導出性能比在直接模式下提高了 10-15 倍,導入過程性能提高了 5 倍。此外,與使用導出實用工具不同,它還能夠只取出特定類型的對象(如過程)。
Data Pump 導出
這個新的實用工具稱為 expdp,以和原來的導出 exp 區分開。在本例中,我們將用 Data Pump 來導出一個大表 CASES,大小約為 3GB。Data Pump 在服務器端使用文件處理來創建和讀取文件;因此,目錄作為位置使用。在這種情況下,我們將使用文件系統 /u02/dpdata1 來保存轉儲文件。
create directory dpdata1 as '/u02/dpdata1';
grant read, write on directory dpdata1 to ananda;
接下來,我們將導出數據:
expdp ananda/abc123 tables=CASES directory=DPDATA1
dumpfile=expCASES.dmp job_name=CASES_EXPORT
新聞熱點
疑難解答