程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 表空間不存在-oracle11G使用expdp、impdp導出導入數據庫問題

表空間不存在-oracle11G使用expdp、impdp導出導入數據庫問題

編輯:編程綜合問答
oracle11G使用expdp、impdp導出導入數據庫問題

問題描述:我使用oracle11G開發,表空間名稱叫TBS_A,得知客戶服務器表空間創建成了TBS_B,為了更方便導出數據庫到客戶服務器,就在自己的數據庫也創建了個同名表空間TBS_B。然後將我自己的數據使用imp(不是dp)從TBS_A導入到了TBS_B,然後將自己TBS_B的表空間使用expdp導出成10G版本。但是拿到客戶那,使用impdp導入時卻提示我TBS_A表空間不存在

我想問,我導出的是自己數據庫的TBS_B,為什麼到客戶那會提示最初數據庫表空間的名字不存在。

最後加了個 remap_tablespace參數解決,但是不明白為什麼會提示最初那個表空間不存在。

最佳回答:


最後解決的方法是

1.使用PL/SQL “導出用戶對象”,會生成一個以原有表空間的表結構。替換下關鍵,例如原有表空間名為“test1”,使用Editplus打開生成的Sql文件將所有“test1”的關鍵字替換為“要導入的表空間名”。

2.使用PL/SQL “導入表”,將剛才改好SQL文件導入,此時在當前用戶下的默認表空間裡已經生成表結構。

3.使用exp命令將數據庫導出:
exp 用戶名/密碼@192.168.1.158/orcl owner=用戶 grants=y file=D:\backup\ZLQHWEB_DATA.dmp log=D:\backup\ZLQHWEB_LOG.log

4.使用imp命令導入:
imp zlwb/[email protected]/orcl full=y ignore=y file=D:\backup\ZLQHWEB0712_DATA.dmp
因為是不同表空間導入所需需要設置full=y,因為已經存在相應的表結構,所以需要設置ignore=y。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved