使用來自不同伺服器的 impdp 還原 Oracle 12c 架構

使用來自不同伺服器的 impdp 還原 Oracle 12c 架構

我在 AWS 中建立了 2 個 EC2 執行個體。

一台充當資料庫伺服器,一台充當客戶端。

Oracle 12c 資料庫執行個體安裝在資料庫伺服器上,Oracle 12c 即時用戶端安裝在用戶端伺服器上。

我創建了一個架構,在其中添加了一些表和數據,然後導出了資料庫轉儲和日誌。

我能夠透過 Oracle 用戶端伺服器的 sys 使用者連接到 Oracle 伺服器。

我已將匯出的資料庫轉儲(使用 expdp 命令)和日誌傳輸到客戶端伺服器。

我正在嘗試使用 impdp 命令從客戶端伺服器匯入匯出的資料庫轉儲。

create directory dumpdir as '/home/oracle/exportDB';
impdp smithj/pwd4smithj@newdevdb schemas=smithj directory=dumpdir dumpfile=smithj.dmp logfile=expdpsmithj.log

但我不知道如何將本機伺服器(客戶端伺服器)路徑稱為目錄。

當我嘗試新增虛擬目錄時,它說路徑不存在。

此路徑 /home/oracle/exportDB 位於客戶端伺服器中。

你能給我建議嗎,因為我沒有選擇。

PS:我這樣做是為了 POC 目的,因為資料庫伺服器中的空間較少,無法將資料庫轉儲檔案傳送到資料庫伺服器,因為它很大。請不要對問題投下反對票。我搜尋了很多論壇,但沒有提到這一點。

答案1

始終是dumpdir從資料庫(伺服器)的角度創建的。您的impdp命令使用此目錄。這最好的方法是在客戶端上建立指向目標目錄的鏈接,或安裝共用或您喜歡的任何方式。然後使用類似CREATE OR REPLACE DIRECTORY dumpdir AS '/mount/dump_directory_on_client/';或 的命令在 Oracle 中建立目錄CREATE OR REPLACE DIRECTORY dumpdir AS '\\client\dumpdir';(例如,對於 Windows)並再次開始匯入。

相關內容