Export

根據所有者 + 從數據庫中的所有使用者導出 Oracle 表

  • November 9, 2011

我想將所有使用者和角色對像從 Oracle 10g 數據庫導出到另一個。我用Google搜尋了它,但我不知道該怎麼做。

首先我使用這個命令:

exp系統/root@$$ DB_Name $$文件=$$ Back_file_name $$所有者=($$ Owner_Name $$)

但問題是某些表設置取決於使用者權限。因此,我還想導出使用者對象。

例如,可以使用以下命令導出所有對象:

exp系統/root@$$ DB_Name $$完整=Y文件=$$ Back_file_name $$

但是此命令不會為我導出所需的對象。

我只想導出:

  • 按所有者名稱的表
  • 所有使用者
  • 也許角色

這可能嗎?

數據泵導出/導入是您正在尋找的。您可以使用它來導出架構定義並將它們載入到目標數據庫中,指定您需要的對像類型。

您可以使用 INCLUDE 參數選擇特定類型的對象,因此要僅導出表,您可以:

expdp include=table ...

如果您以具有足夠權限的使用者身份執行導出/導入,這也將在您導入時在目標上創建使用者。

Oracle 10.2 的完整文件:

數據泵導出

數據泵導入

據我了解,您希望將數據庫從一個位置遷移到另一個位置。首先,您必須在目標數據庫上創建所需的表空間,而不是在源數據庫上創建使用者。這裡的重點是您必須手動創建使用者,然後給他們所需的權限。您無法使用 exp 或 expdp 實用程序來做到這一點。

之後,您可以使用您的程式碼:

exp系統/root@

$$ DB_Name $$文件=$$ Back_file_name $$所有者=($$ Owner_Name $$) 這將導出架構中的所有對象。

引用自:https://dba.stackexchange.com/questions/7669