使用 Oracle Data Pump 載入資料
Oracle Data Pump 在 Oracle 資料庫與 Autonomous Database on Dedicated Exadata Infrastructure 之間提供非常快速的大量資料和描述資料移動。
「資料汲取」匯入可讓您從位於 Oracle Cloud Infrastructure Object Storage 和 Oracle Cloud Infrastructure Object Storage Classic 的「資料汲取」檔案匯入資料。您可以將資料儲存至雲端物件存放區,並使用 Oracle Data Pump 將資料載入至 Autonomous Database 。
附註:
如需閱讀下列主題的「試用」替代方案,請前往 Oracle Autonomous Database Dedicated for Fleet Administrators Workshop 中的 Lab 9:Migrate with Data Pump 進行移轉。從現有的 Oracle Database 匯出資料
首先,使用 Oracle Data Pump 匯出來匯出現有的 Oracle Database 綱要。然後,使用 Oracle Data Pump 匯入將它們移轉至 Autonomous Database 。
Oracle 建議使用下列「資料汲取匯出」參數,以便更快速輕鬆地移轉至 Autonomous Database :
exclude=cluster, db_link
parallel=n
schemas=schema name
dumpfile=export%l.dmp
Oracle Data Pump 匯出提供數種匯出模式,Oracle 建議使用綱要模式來移轉至 Autonomous Database 。您可以使用綱要參數列出要匯出的綱要。
為了加快移轉速度,請將綱要匯出成多個「資料汲取」檔案,並使用併行執行。您可以指定要與 dumpfile 參數搭配使用的傾印檔案名稱格式。請將 parallel 參數設為至少您的 Autonomous Database CPU 數目。
exclude 和 data_options 參數可確保不會匯出 Autonomous Database 中無法使用的物件類型,並將表格分割區分組在一起,從而可以更快速地匯入至 Autonomous Database 。
附註:
Oracle 建議您先收集最新的統計資料,再執行expdp
命令。dbms_stats
套裝軟體提供多種收集最新統計資料的程序。統計資料會自動新增至匯出傾印檔,可協助判斷物件的大小,並在匯入期間將平行程度最佳化。如需詳細資訊,請參閱 Oracle Database 19c PL/SQL Packages and Types Reference 中的 DBMS_STATS Operational Notes 和 Oracle Database 23ai PL/SQL Packages and Types References 。
下列範例會將 SH 綱要從來源 Oracle Database 匯出,以移轉至 16 個 CPU 的 Autonomous Database :
expdp sh/sh@orcl \
exclude=cluster, db_link \
parallel=16 \
schemas=sh \
dumpfile=export%l.dmp \
encryption_pwd_prompt=yes
「資料汲取」參數的注意事項:-
使用
expdp
進行匯出時,如果使用encryption_pwd_prompt=yes
參數,請一併使用encryption_pwd_prompt=yes
進行匯入,然後在impdp
提示輸入相同的密碼來解密傾印檔案 (請記住匯出時提供的密碼)。加密密碼的長度上限為 128 個位元組。 -
dumpfile
參數除了支援傳統%U
和%u
萬用字元之外,還支援%L
和%l
萬用字元。例如,dumpfile=export%L.dmp
。使用
%L
或%l
萬用字元從 Oracle Database 12.2 版和更新版本進行匯出。此萬用字元會將傾印檔檔案名稱展開為 3 位數的 10 位數,可變寬度遞增整數,從 100 開始,結束於 2147483646。使用舊版的
%U
或%u
萬用字元從 Oracle Database 12.2 版之前的匯出。如果使用此選項,而且需要 99 個以上的傾印檔,則必須指定多個傾印檔名稱,每個名稱都有%U
或%u
參數。
您可以根據需求使用其他「資料汲取匯出」參數,例如 compression
。如需詳細資訊,請參閱 Oracle Database 19c Utilities 或 Oracle Database 23ai Utilities 中的 Oracle Data Pump Export 。
上傳匯出檔案至雲端物件儲存
您必須先將匯出檔案上傳至雲端物件儲存,才能匯入從來源 Oracle Database 匯出的資料。
您可以將匯出檔案上傳到 Oracle Cloud Infrastructure Object Storage 中的現有儲存桶,或上傳到 Oracle Cloud Infrastructure Object Storage Classic 中的現有儲存容器。或者,您也可以使用下列程序建立新的儲存的儲存桶,並將匯出檔案上傳至該儲存桶。
-
登入您的 Oracle Cloud 帳戶,網址為:cloud.oracle.com 。
-
從 Oracle Cloud Infrastructure 的左側導覽清單中選擇物件儲存,然後從子清單中選擇物件儲存。
-
選擇區間以建立儲存的儲存桶。
-
按一下建立儲存桶。
-
在「建立儲存桶」對話方塊中,指定儲存桶名稱,然後按一下建立儲存桶。
-
建立儲存桶之後,在儲存桶清單中按一下其名稱,即可顯示其「儲存桶詳細資訊」頁面。
-
在「物件」方塊中,按一下上傳物件。
-
在「上傳物件」對話方塊中,按一下「從您的電腦選擇檔案」方塊中的選取檔案連結。
-
在檔案瀏覽器中,瀏覽並選取匯出檔案。接著按一下開啟。
-
在「上傳物件」對話方塊中,按一下上傳物件,開始上傳您選取的檔案。
-
上傳完成後,請關閉「上傳物件」對話方塊。
使用 Oracle Data Pump 匯入資料
Oracle 建議使用最新的 Oracle Data Pump 版本將資料從「資料汲取」檔案匯入至您的 Autonomous Database ,因為其中包含增強功能並修正,以獲得更好的體驗。
從 Oracle Instant Client 下載,為您的平台下載最新版本的 Oracle Instant Client 基本套件與工具套件 (包含 Oracle Data Pump)。請參閱平台安裝下載頁面上的安裝說明,以取得下載 Oracle Instant Client 後所需的安裝步驟。
在 Oracle Data Pump 版本 18.3 和更新的版本中,credential
引數會認證您用於來源檔案之雲端物件儲存服務的「資料汲取」。dumpfile
引數是以逗號分隔的「資料汲取」檔案 URL 清單。
「資料汲取」匯入版本 12.2.0.1 和更舊版本沒有 credential
參數。如果您使用的是舊版「資料汲取匯入」,則需要定義 Autonomous Database 的預設證明資料特性,並在 dumpfile
參數中使用 default_credential
關鍵字。
在 Oracle Data Pump 中,如果您的來源檔案位於 Oracle Cloud Infrastructure Object Storage 中,您可以使用 Oracle Cloud Infrastructure 原生 URI 或 Swift URI。如需這些 URI 格式的詳細資訊,請參閱雲端物件儲存 URI 格式。
存取資料汲取匯入的日誌檔
「資料汲取匯入」作業的日誌檔是儲存在您使用資料汲取 impdp
directory 參數指定的目錄中。
若要存取日誌檔,您必須使用 DBMS_CLOUD.PUT_OBJECT
程序將日誌檔移至您的雲端物件儲存。例如,下列 PL/SQL 區塊會將 import.log
檔案移至您的雲端物件儲存:
BEGIN
DBMS_CLOUD.PUT_OBJECT
(
credential_name => 'DEF_CRED_NAME',
object_uri => 'https://objectstorage.us-ashburn-1.oraclecloud.com/n/namespace-string/b/bucketname/o/import.log',
directory_name => 'DATA_PUMP_DIR',
file_name => 'import.log');
END;
/
在此範例中,namespace-string
是 Oracle Cloud Infrastructure 物件儲存命名空間,bucketname
是儲存桶名稱。請參閱瞭解 Object Storage 命名空間瞭解詳細資訊。
如需詳細資訊,請參閱 DBMS_CLOUD for Objects and Files 。