Oracle數據導入導出imp/exp sp2-0734:未知的命令開頭'imp 忽略了剩余行默認分類 解決辦法


sp2-0734:未知的命令開頭'imp 忽略了剩余行默認分類

應該是在cmd的dos命令提示符下執行,而不是在sqlplus里面。。。。。。但是格式一定要類似於: 

imp PERSONNEL_MANAGE/MWQ@DBSQL full=y  file=C:\personnel_manage.dmpignore=y 

謹以此紀念我的粗心。。。。。我錯了。 



imp 命令是在dos提示符下執行的。 
直接cmd后執行而不是在sql下執行的 


數據導出: 
1 將數據庫TEST完全導出,用戶名system 密碼manager 導出到D:daochu.dmp中 
   exp system/manager@TEST file=d:daochu.dmp full=y 
2 將數據庫中system用戶與sys用戶的表導出 
   exp system/manager@TEST file=d:daochu.dmp owner=(system,sys) 
3 將數據庫中的表inner_notify、notify_staff_relat導出 
    exp aichannel/aichannel@TESTDB2 file= d:datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat) 

4 將數據庫中的表table1中的字段filed1以"00"打頭的數據導出 
   exp system/manager@TEST file=d:daochu.dmp tables=(table1) query=" where filed1 like '00%'" 

  上面是常用的導出,對於壓縮,既用winzip把dmp文件可以很好的壓縮。 
  也可以在上面命令后面 加上 compress=y 來實現。 

數據的導入 
1 將D:daochu.dmp 中的數據導入 TEST數據庫中。 
   imp system/manager@TEST  file=d:daochu.dmp 
   imp aichannel/aichannel@HUST full=y  file=d:datanewsmgnt.dmp ignore=y 
   上面可能有點問題,因為有的表已經存在,然后它就報錯,對該表就不進行導入。 
   在后面加上 ignore=y 就可以了。 
2 將d:daochu.dmp中的表table1 導入 
imp system/manager@TEST  file=d:daochu.dmp  tables=(table1)

 

基本上上面的導入導出夠用了。不少情況要先是將表徹底刪除,然后導入。 

注意: 
操作者要有足夠的權限,權限不夠它會提示。 
數據庫時可以連上的。可以用tnsping TEST 來獲得數據庫TEST能否連上。 


當然,上面的方法在導出數據時可能會導出很大的包,那是因為你的用戶可能在授權的時候授予了DBA的權限,所以可以采用下面方法來進行數據庫備份:

數據庫備份 
建議系統過渡后,每周進行一次備份。或者在數據表發生重大改變前,對要改變的數據表進行備份。 
執行以下步驟,進行備份。 
在命令行里,敲入“cmd”,回車,進入命令行窗口。 
在窗口中,輸入: 
exp mas/123456@mas 

系統提示:輸入數組提取緩沖區大小: 4096 > 
可以直接回車; 

系統提示:導出文件: EXPDAT.DMP> 
此處輸入導出文件的位置,其路徑必須存在,Oracle在這里不會自動建立路徑,但可以建立文件名。備份文件以dmp作為后綴。 
輸入內容如:e:\work\mas_db_090925v1.dmp 回車 

系統提示: (1)E(完整的數據庫),(2)U(用戶) 或 (3)T(表): (2)U > u 
此處可以輸入u,也可以直接回車,因為系統此時默認的是U 

系統提示:導出權限(yes/no):yes>回車 

系統提示:導出表數據(yes/no):yes>回車 

系統提示:壓縮區(yes/no):yes>回車 

系統提示:要導出的用戶: (RETURN 以退出) > mas 

系統提示:要導出的用戶: (RETURN 以退出) > 回車 

此時系統會自動進行備份


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM