導航:首頁 > 程序命令 > oracle命令行導出dmp

oracle命令行導出dmp

發布時間:2023-09-14 04:46:02

① 如何在oracle中導入導出dmp文件

Oracle數據導入導出imp/exp就相當於oracle數據還原與備份。exp命令
以把數據從遠程資料庫伺服器導出到本地的dmp文件,imp命令可以把dmp文件從本
地導入到遠處的資料庫伺服器中。 利用這個功能可以構建兩個相同的資料庫,一
個用來測試,一個用來正式使用。
例如:imp命令導入數據:
imp username/password@SID file=XXX.dmp fromuser=XXX touser=XXX tables=(XXX,XXX)
其中,fromuser指對方資料庫用戶名,touser指你的資料庫的用戶名;
fromuser若為多個表空間的話,使用()將其括起來:fromuser=(a,b);
touser參數仿fromuser參數;
若只導入一部分表,使用tables參數,用()括起要導入的表;如果想全部導入,不需要指定tables參數

下面介紹的是導入導出的實例。
數據導出:
1 將資料庫TEST完全導出,用戶名system 密碼manager 導出到D:\chu.dmp中
exp system/manager@TEST file=d:\chu.dmp full=y
2 將資料庫中system用戶與sys用戶的表導出
exp system/manager@TEST file=d:\chu.dmp owner=(system,sys)
3 將資料庫中的表inner_notify、notify_staff_relat導出
exp aichannel/aichannel@TESTDB2 file= d:\data\newsmgnt.dmp tables=
(inner_notify,notify_staff_relat)

② oracle 導出成dmp文件

當然,用工具導出是最方便的,要是直接用黑窗口導出也是很方便的。
這個導出的話,你可以具體的上網搜搜,本地的就直接導出就行:
數據導出:
1 將資料庫TEST完全導出,用戶名system 密碼manager 導出到D:\chu.dmp中
exp system/manager@TEST file=d:\chu.dmp full=y
2 將資料庫中system用戶與sys用戶的表導出
exp system/manager@TEST file=d:\chu.dmp owner=(system,sys)
3 將資料庫中的表table1 、table2導出
exp system/manager@TEST file=d:\chu.dmp tables=(table1,table2)
4 將資料庫中的表table1中的欄位filed1以"00"打頭的數據導出
exp system/manager@TEST file=d:\chu.dmp tables=(table1) query=\" where filed1 like '00%'\"
如果是遠程的話也是可以的:
C:\Documents and Settings\Administrator>exp tmrpt/[email protected]:1521/bocReport file=c:\yuCheng\event_log_realtime.d
mp tables=(event_log_realtime);

③ 怎麼導出遠程oracle資料庫,導出格式為dmp的

在開發的有時候需要在測試庫中和真實庫中數據一致。這時就需要設計到資料庫的導出。一方面方便自己查閱,另一方面方便需要的朋友

④ Oracle導入導出資料庫的語法


導讀:oracle中除或裂稿了在Oracle編輯器中用圖形化的方式導入導出文理文件的數據方式外,還可以採用命令行的方式導入導出資料庫,其語法實示例如下:
imp [username[/password[@service]]]
步驟:1、首先在進入 dos, 然後切換到 oracle 資料庫物理文件所在的目錄即(dmp文件所在的目錄)。接下來輸入下述語句!
imp username/password@service file=psmis.dmp fromuser=psmis touser=psmis log=psmis.log 下面就語句的語法做一下解釋:
imp :是導入資料庫的語法前綴;
username/password@service:意思是登陸指定的service;
file :指的是已經分離的oracle資料庫物理文件;
fromuser:指的是來源用戶;
touser:指的是目標用戶;
log:指的是當前源螞目錄下的日誌文件;
在 dos 中查看oracle中的imp,exp命令:
imp help=y
exp help=y
1. 導出表數據:
文件名以backup_yyMMddHHmm.dmp 表示
dateString=`date +%y%m%d%H%M`
#echo $dateString
su - oracle -c "exp userid/password tables=table1,table2 file= path/backup_$dateString.dmp BUFFER=8192 grants=y compress=N"
compress:N表明導出來的文件不需要壓縮放在一個數據塊中,當資料庫中的表數據特別大的時候,若放在不同的資料庫,在恢復的時候會有問題。
導出的數據包括表創建語句,序列,觸發器等。
2. 導入表數據
表導入的過程:創建表,導入數據,創建序列
echo backup file:$1
fileName=$1
echo $fileName
#if [ "$fileName" = ""]
#then
# echo "請指定備份恢復的文件名,請指定絕對文件路徑"
# exit 0;
#fi
#echo fileName=$fileName
su - oracle -c "imp userid/password file=$fileName show=n buffer=2048000 ignore=Y commit=y grants=y full=y"
ignore:Y表明忽略表創建的過程,只是將表中的數據導入表中。
第二部分:
如何在oracle中導入dmp資料庫文件?
2006/2/16 zhanghua first create
Oracle數據導入導出imp/exp就相當於oracle數據還原與備份。exp命令可以把數據從遠程資料庫伺服器導出到本地的dmp文件,imp命令可以把dmp文件從本地導入到遠處的資料庫伺服器中。 利用這個功能可以構建兩個相同的資料庫,一個用來測試,一個用來正式使用。
執行環境:可以在SQLPLUS.EXE或者DOS(命令行)中執行,
DOS中可以執行時由於 在oracle 8i 中 安裝目錄ora81BIN被設置為全局路徑,
該目錄下有EXP.EXE與IMP.EXE文件被用來執行導入導出。
oracle用java編寫,SQLPLUS.EXE、EXP.EXE、IMP.EXE這兩個文件有可能是被包裝後的類文件。衫孝
SQLPLUS.EXE調用EXP.EXE、IMP.EXE所包裹的類,完成導入導出功能。
下面介紹的是導入導出的實例。
數據導出:
1 將資料庫TEST完全導出,用戶名system 密碼manager 導出到D:chu.dmp中
exp system/manager@TESTfile=d:chu.dmp full=y
2 將資料庫中system用戶與sys用戶的表導出
exp system/manager@TESTfile=d:chu.dmp owner=(system,sys)
3 將資料庫中的表inner_notify、notify_staff_relat導出
exp aichannel/aichannel@TESTDB2file= d:dataewsmgnt.dmp tables=(inner_notify,notify_staff_relat)
4 將資料庫中的表table1中的欄位filed1以"00"打頭的數據導出
exp system/manager@TESTfile=d:chu.dmp tables=(table1) query=" where filed1 like ༼%'""
上面是常用的導出,對於壓縮,既用winzip把dmp文件可以很好的壓縮。
也可以在上面命令後面 加上 compress=y 來實現。
數據的導入
1 將D:chu.dmp 中的數據導入 TEST資料庫中。
imp system/manager@TEST file=d:chu.dmp
imp aichannel/aichannel@HUSTfull=y file=file= d:dataewsmgnt.dmp ignore=y
上面可能有點問題,因為有的表已經存在,然後它就報錯,對該表就不進行導入。
在後面加上 ignore=y 就可以了。
2 將d:chu.dmp中的表table1 導入
imp system/manager@TEST file=d:chu.dmp tables=(table1)
基本上上面的導入導出夠用了。不少情況要先是將表徹底刪除,然後導入。
注意:
操作者要有足夠的許可權,許可權不夠它會提示。
資料庫時可以連上的。可以用tnsping TEST 來獲得資料庫TEST能否連上。
到這里關於Oracl導入導出資料庫的語法就全部介紹完了,希望大家通本文的學習之後,以後再遇到涉及到Oracle導入導出的問題能夠輕松解決,希望能夠幫助到大家。
"

⑤ Oracle創建刪除導入導出命令行總結


說明:
在創建資料庫時輸入的密碼,是修改系統默認的密碼,以system和sysman等系統默認身份登錄時要輸入的密碼就是修改後的密碼(創建資料庫時輸入的密碼)
如果要創建游或新的用戶就必須以system或者sysman(這二者的許可權最大)的身份登錄後才可創建
創建用戶格式:create user 用戶名 identified by 密碼(例如:create user cht identified by cht;)
創建完成後,必須分配許可權,否則連不上資料庫和sqlplus。
因此要做:grant connect,resource,dba to cht;這樣資料庫就可以通過cht/cht連上了。那些select,update,delete,insert的許可權就不必分配了,因為每個用戶默認都有這些基本許可權。
命令行方式連接資料庫的方法:
開始==》運行==》cmd
方式一:
輸入sqlplus,回車
輸入用戶名: system,回車
輸入密碼: orcl,回車
方式二:
輸入sqlplus system/orcl@orcl,回車(system是用戶名,orcl是密碼,@後面的orcl是庫的名字)
(資料庫安裝完成後,有兩個系統級的用戶神激伍 :
1) system 默認密碼為 :manager
2) sys 默認密碼為 :change_on_install)
創建用戶前必須要先建好臨時表空間和數據表空間兩個表空間,否則用系統默認的表空間不好。
//創建臨時表空間
create temporary tablespace zfmi_temp tempfile 'D:oracleoradatazfmizfmi_temp.dbf' size 100m autoextend on next 32m maxsize 2048m extent management local;
說明:
1、zfmi_temp 表空間的名字
2、鉛春D:oracleoradatazfmi 存放資料庫文件的地方,一般是安裝資料庫後有控制文件,數據文件和日誌文件的文件夾,再加上要創建表空間的名字+dbf(數據文件)
3、100M 表空間的初始大小
4、32M 表空間自動增長的大小
5、2048M 表空間最大的大小
//創建數據表空間
create tablespace zfmi logging datafile 'D:oracleoradatazfmizfmi.dbf' size 100m autoextend on next 32m maxsize 2048m extent management local;
//創建用戶並指定表空間
create user zfmi identified by zfmi default tablespace zfmi temporary tablespace zfmi_temp;
//給用戶授予許可權
grant connect,resource dba to zfmi; (dba:指定所有許可權)
到這一步新建一個用戶的工作就完成了。
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//刪除用戶以及用戶所有的對象
drop user zfmi cascade;
//cascade參數是級聯刪除該用戶所有對象,經常遇到如用戶有對象而未加此參數則用戶刪不了的問題,所以習慣性的加此參數
//刪除表空間
前提:刪除表空間之前要確認該表空間沒有被其他用戶使用之後再做刪除
drop tablespace zfmi including contents and datafiles cascade onstraints;
//including contents 刪除表空間中的內容,如果刪除表空間之前表空間中有內容,而未加此參數,表空間刪不掉,所以習慣性的加此參數
//including datafiles 刪除表空間中的數據文件
//cascade constraints 同時刪除tablespace中表的外鍵參照
如果刪除表空間之前刪除了表空間文件,解決辦法:
如果在清除表空間之前,先刪除了表空間對應的數據文件,會造成資料庫無法正常啟動和關閉。
可使用如下方法恢復(此方法已經在oracle9i中驗證通過):
下面的過程中,filename是已經被刪除的數據文件,如果有多個,則需要多次執行;tablespace_name是相應的表空間的名稱。
$ sqlplus /nolog
SQL conn / as sysdba;
如果資料庫已經啟動,則需要先執行下面這行:
SQL shutdown abort
SQL startup mount
SQL alter database datafile 'filename' offline drop;
SQL alter database open;
SQL drop tablespace tablespace_name including contents;
導入導出命令:
Oracle數據導入導出imp/exp就相當於oracle數據還原與備份。exp命令可以把數據從遠程資料庫伺服器導出到本地的dmp文件, imp命令可以把dmp文件從本地導入到遠處的資料庫伺服器中。 利用這個功能可以構建兩個相同的資料庫,一個用來測試,一個用來正式使用。
下面介紹的是導入導出的實例。(注意:不用連接到SQL/plus,直接在DOS下就可以導出。)
數據導出:
1 將資料庫TEST完全導出,用戶名system 密碼manager 導出到D:chu.dmp中
exp system/manager@TEST file=d:chu.dmp full=y
2 將資料庫中system用戶與sys用戶的表導出
exp system/manager@TEST file=d:chu.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:chu.dmp tables=(table1) query=" where filed1 like ༼%'"
上面是常用的導出,對於壓縮,既用winzip把dmp文件可以很好的壓縮。
也可以在上面命令後面 加上 compress=y 來實現。
數據的導入
1 將D:chu.dmp 中的數據導入 TEST資料庫中。
imp system/manager@TEST file=d:chu.dmp
imp aichannel/aichannel@HUST full=y file=d:datanewsmgnt.dmp ignore=y
上面可能有點問題,因為有的表已經存在,然後它就報錯,對該表就不進行導入。
在後面加上 ignore=y 就可以了。
2 將d:chu.dmp中的表table1 導入
imp system/manager@TEST file=d:chu.dmp tables=(table1)
基本上上面的導入導出夠用了。不少情況要先是將表徹底刪除,然後導入。
注意:
操作者要有足夠的許可權,許可權不夠它會提示。
資料庫時可以連上的。可以用tnsping TEST 來獲得資料庫TEST能否連上。
附錄一:
給用戶增加導入數據許可權的操作
第一,啟動sql*puls
第二,以system/manager登陸
第三,create user 用戶名 IDENTIFIED BY 密碼 (如果已經創建過用戶,這步可以省略)
第四,GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
DBA,CONNECT,RESOURCE,CREATE SESSION TO 用戶名字
第五, 運行-cmd-進入dmp文件所在的目錄,
imp userid=system/manager full=y file=*.dmp
或者 imp userid=system/manager full=y file=filename.dmp
執行示例:
F:WorkOracle_Databackupimp userid=test/test full=y file=inner_notify.dmp
屏幕顯示
Import: Release 8.1.7.0.0 - Proction on 星期四 2月 16 16:50:05 2006
(c) Copyright 2000 Oracle Corporation. All rights reserved.
連接到: Oracle8i Enterprise Edition Release 8.1.7.0.0 - Proction
With the Partitioning option
JServer Release 8.1.7.0.0 - Proction
經由常規路徑導出由EXPORT:V08.01.07創建的文件
已經完成ZHS16GBK字元集和ZHS16GBK NCHAR 字元集中的導入
導出伺服器使用UTF8 NCHAR 字元集 (可能的ncharset轉換)
. 正在將AICHANNEL的對象導入到 AICHANNEL
. . 正在導入表 "INNER_NOTIFY" 4行被導入
准備啟用約束條件
成功終止導入,但出現警告。
附錄二:
Oracle 不允許直接改變表的擁有者, 利用Export/Import可以達到這一目的。
先建立import9.par,
然後,使用時命令如下:imp parfile=/filepath/import9.par
例 import9.par 內容如下:
FROMUSER=TGPMS
TOUSER=TGPMS2 (註:把表的擁有者由FROMUSER改為TOUSER,FROMUSER和TOUSER的用戶可以不同)
ROWS=Y
INDEXES=Y
GRANTS=Y
CONSTRAINTS=Y
BUFFER=409600
file==/backup/ctgpc_20030623.dmp
log==/backup/import_20030623.log

閱讀全文

與oracle命令行導出dmp相關的資料

熱點內容
如何讓軟體在多個安卓系統上運行 瀏覽:571
java判斷半形 瀏覽:880
java判斷正負 瀏覽:320
刷頭條程序員的日常 瀏覽:102
吉林程序員吐槽 瀏覽:243
單片機溫度范圍 瀏覽:419
程序員為什麼素質低 瀏覽:897
可愛的程序員小姐姐 瀏覽:145
伺服器上網站的地址 瀏覽:798
蘋果平板如何找到app資源庫 瀏覽:321
阿里雲可以雲伺服器地址 瀏覽:249
熊貓繪畫app如何導入圖片 瀏覽:555
如何自己編輯手機app 瀏覽:924
程序員那麼可愛帶的項鏈 瀏覽:532
安卓系統導航mic什麼意思 瀏覽:192
編譯sdk如何輸出bin文件 瀏覽:677
如何用html5開發app 瀏覽:142
怎麼隱藏蘋果的app 瀏覽:327
上海捷豹空氣壓縮機 瀏覽:457
51單片機換行 瀏覽:739