sql >> Databasteknik >  >> RDS >> Oracle

Hur man exporterar databasschema i Oracle till en dumpfil

Det beror på vilken version av Oracle? Äldre versioner kräver exp (export), nyare versioner använder expdp (datapump); exp fasades ut men fungerar fortfarande för det mesta.

Innan du börjar, notera att Data Pump exporterar till "katalogen" på serversidan av Oracle, som är en Oracle symbolisk plats som mappas i databasen till en fysisk plats. Det kan finnas en standardkatalog (DATA_PUMP_DIR), kontrollera genom att fråga DBA_DIRECTORIES:

  SQL> select * from dba_directories;

... och om inte, skapa en

  SQL> create directory DATA_PUMP_DIR as '/oracle/dumps';
  SQL> grant all on directory DATA_PUMP_DIR to myuser;    -- DBAs dont need this grant

Förutsatt att du kan ansluta som SYSTEM-användare, eller en annan DBA, kan du exportera vilket schema som helst till standardkatalogen:

 $ expdp system/manager schemas=user1 dumpfile=user1.dpdmp

Eller ange en specifik katalog, lägg till katalog= :

 C:\> expdp system/manager schemas=user1 dumpfile=user1.dpdmp directory=DUMPDIR

Med äldre exportverktyg kan du exportera till din arbetskatalog, och till och med på en klientdator som är avlägsen från servern, med:

 $ exp system/manager owner=user1 file=user1.dmp

Se till att exporten görs med rätt teckenuppsättning. Om du inte har konfigurerat din miljö kanske Oracle-klientens teckenuppsättning inte matchar DB-teckenuppsättningen, och Oracle kommer att göra teckenuppsättningskonvertering, vilket kanske inte är vad du vill ha. Du kommer att se en varning, i så fall vill du upprepa exporten efter att ha ställt in NLS_LANG miljövariabel så att klientens teckenuppsättning matchar databasens teckenuppsättning. Detta kommer att få Oracle att hoppa över teckenuppsättningskonvertering.

Exempel för amerikansk UTF8 (UNIX):

 $ export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

Windows använder SET, till exempel med japanska UTF8:

 C:\> set NLS_LANG=Japanese_Japan.AL32UTF8

Mer information om Data Pump här:http://docs.oracle.com/cd/B28359_01/server.111/b28319/dp_export.htm#g1022624




  1. Hur skapar man dummyvariabelkolumner för tusentals kategorier i Google BigQuery?

  2. Lista över främmande nycklar och tabellerna de refererar till i Oracle DB

  3. Hur kan jag infoga 10 miljoner poster på kortast möjliga tid?

  4. Hur man skapar en MySQL-databas med hjälp av cPanel API