導航:首頁 > 程序命令 > 導出oracle資料庫命令

導出oracle資料庫命令

發布時間:2023-08-18 18:05:09

A. 請問oracle資料庫如何導出資料庫的表結構

oracle資料庫導出資料庫的表結構:

1、電腦鍵盤同時按windows鍵和R鍵

(1)導出oracle資料庫命令擴展閱讀:

數據導出數族返據庫的命令總結:

1 將資料庫zxcc完全導出,用戶名kf 密碼zx 導出到D:zxcc.dmp中

exp kf/zx@zxcc file=d:zxcc.dmp full=y (一般full=n,否則會全庫的所有對象導出)

(exp user/[email protected]/orcl10g file=F:/fileSys.dmplog=F:/fileSys.log

statistics=nonetables=file_attach,file_tree,file_permission)

full=y 表示全庫導出。full總共有2個可選項yes(y)/no(n),預設情況下full=no,這時只會將該用戶下的對象導出。

2 將資料庫zxcc中kf用戶與cc用戶的表導出

exp kf/zx@zxcc file=d:zxcc_ur.dmp owner=(kf,cc)

full方式可以備份所有用戶的資料庫對象,包括表空間、兆飢飢用戶信息等,owner=XX只能備份指定用戶的對象,其他用戶下的就不備份了肢攜,EXP中full=y和owner=XX是不能同時使用的。

3 將資料庫zxcc中的表kf_operator、kf_role導出

exp kf/zx@zxcc file= d:zxcc_tb.dmp tables=(kf_operator,kf_role)

tables=xx 表示備份相關表,不能同時和owner、full使用。

B. 怎樣導出oracle整個資料庫

1 將資料庫跡兆蘆TEST完全導出,用戶姿帶名system 密碼manager 導出到D:\chu.dmp中x0dx0a exp system/manager@TEST file=d:\chu.dmp full=yx0dx0a2 將資料庫中system用戶與sys用戶的表導出x0dx0a exp system/manager@TEST file=d:\chu.dmp owner=(system,sys)x0dx0a3 將資料庫中的表table1 、table2導出x0dx0a exp system/manager@TEST file=d:\chu.dmp tables=(table1,table2) x0dx0a4 將資料庫中的表table1中的欄位filed1以"00"打頭的猜洞數據導出x0dx0a exp system/manager@TEST file=d:\chu.dmp tables=(table1) query=\" where filed1 like ༼%'\"x0dx0a x0dx0a 上面是常用的導出,對於壓縮我不太在意,用winzip把dmp文件可以很好的壓縮。x0dx0a 不過在上面命令後面 加上 compress=y 就可以了

C. oracle資料庫備份exp命令(oracle導出exp)

oracle資料庫備份exp命令:

第一個,表模式,備份某個用戶模式下指定的對象(表)。業務資料庫通常採用這種備份方式。若備份到本地文件,使用如下命令:

expicdmain/icdrows=yindexes=ncompress=nbuffer=65536

feedback=100000volsize=0

file=exp_icdmain_csd_yyyymmdd.dmp

log=exp_icdmain_csd_yyyymmdd.log

tables=,icdmain.serviceinfo,icdmain.dealinfo

若直接備份到磁唯猛帶設備,使用如下命令:

expicdmain/icdrows=yindexes=ncompress=nbuffer=65536

feedback=100000volsize=0

file=/dev/rmt0

log=exp_icdmain_csd_yyyymmdd.log

tables=,icdmain.serviceinfo,icdmain.dealinfo

註:在磁碟空間允許的情況下,應先備份到本地伺服器,然後再拷貝到磁帶。出於速度方面的考慮,盡量不要直接備份到磁帶設備。

第二個,用戶模式,備份某個用戶模式下的所有對象。業務凳隱資料庫通常採用這種備份方式。若備份到本地文件,使用如下命令:

expicdmain/icdowner=icdmainrows=yindexes=ncompress=nbuffer=65536

feedback=100000volsize=0

file=exp_icdmain_yyyymmdd.dmp

log=exp_icdmain_yyyymmdd.log

若直接備份到磁帶設備,使用如下命令:

expicdmain/icdowner=icdmainrows=yindexes=ncompress=nbuffer=65536

feedback=100000volsize=0

file=/dev/rmt0

log=exp_icdmain_yyyymmdd.log

註:如果磁碟有空間,建議備份到磁碟,然後再拷貝到磁帶。如果資料庫數據量較小,可採用這種辦法備份。

第三個,完全模式,備份完整的資料庫。業務資料庫不採用這種備份方式。備份命令為:

expicdmain/icdrows=yindexes=ncompress=nbuffer=65536

feedback=100000volsize=0full=y

file=exp_fulldb_yyyymmdd.dmp(磁帶設備則為/dev/rmt0)

log=exp_fulldb_yyyymmdd.log

對於資料庫備份,建議採用增量備份,即只備份上一次備份以來更改的數據。增量備份命令:

expicdmain/icdrows=yindexes=ncompress=nbuffer=65536

feedback=100000volsize=0full=yinctype=incremental

file=exp_fulldb_yyyymmdd.dmp(磁帶設備則為/dev/rmt0)

log=exp_fulldb_yyyymmdd.log

(3)導出oracle資料庫命令擴展閱讀:

關於增量備份必須滿足下列條件:

1、只對完整資料庫備份有效,且第一次需要full=y參數,以後需要inctype=incremental參數

2、用戶必須有EXP_FULL_DATABASE的系統角色。

3.、話務量較小時方可採用資料庫備份。

4、如果磁碟有空間,建議備份到磁指粗橋盤,然後再備份到磁碟。

版權聲明:本文為CSDN博主「kalogen」的原創文章,遵循CC4.0BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。

D. oracle怎麼導出數據

Oracle導出導出有兩中方式:一、利用exp imp導出導入;二、利用Oracel數據泵expdp impdp導出導入。
一、利用exp imp導出導入
exp imp 語法如下:
exp:
1) 將資料庫orcl完全導出
exp system/manager@orcl file=d:\orcl_bak.dmp full=y
2) 將資料庫中system用戶的表導出
exp system/manager@orcl file=d:\system_bak.dmp owner=system
3) 將資料庫中表table1,table2導出
exp system/manager@orcl file=d:\table_bak.dmp tables=(table1,table2)
4) 將資料庫中的表customer中的欄位mobile以"139"開頭的數據導出
exp system/manager@orcl file=d:\mobile_bak.dmp tables=customer query=\"where mobile like '139%' \"
imp:
1) 將備份文件bak.dmp導出資料庫
imp system/manager@orcl file=d:\bak.dmp
如果數據表中表已經存在,會提示錯誤,在後面加上ignore=y就可以了。
2) 將備份文件bak.dmp中的表table1導入
imp system/manager@orcl file=d:\bak.dmp tables=(table1)
exp imp導出導入數據方式的好處是只要你本地安裝了Oracle客戶端,你就可以將伺服器中的數據導出到你本地計算機。同樣也可以將dmp文件從你本地導入到伺服器資料庫中。但是這種方式在Oracle11g版本中會出現一個問題:不能導出空表。Oracle11g新增了一個參數deferred_segment_creation,含義是段延遲創建,默認是true。當你新建了一張表,並且沒用向其中插入數據時,這個表不會立即分配segment。
解決辦法:
1、設置deferred_segment_creation參數為false後,無論是空表,還是非空表,都分配segment。
在sqlplus中,執行如下命令:
SQL>alter system set deferred_segment_creation=false;
查看:
SQL>show parameter deferred_segment_creation;
該值設置後,只對後面新增的表起作用,對之前建立的空表不起作用,並且注意要重啟資料庫讓參數生效。
2、使用 ALLOCATE EXTEN
使用 ALLOCATE EXTEN可以為資料庫對象分配Extent,語法如下:
alter table table_name allocate extent
構建對空表分配空間的SQL命令:

SQL>select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0
批量生成要修改的語句。
然後執行這些修改語句,對所有空表分配空間。
此時用exp命令,可將包括空表在內的所有表導出。

二、利用expdp impdp導出導入
在Oracle10g中exp imp被重新設計為Oracle Data Pump(保留了原有的 exp imp工具)

數據泵與傳統導出導入的區別;
1) exp和imp是客戶端工具,他們既可以在客戶端使用,也可以在服務端使用。
2) expdp和impdp是服務端工具,只能在Oracle服務端使用。
3) imp只適用於exp導出文件,impdp只適用於expdp導出文件。

expdp導出數據:
1、為輸出路徑建立一個資料庫的directory對象。
create or replace directory mpdir as 'd:\';
可以通過:select * from dba_directories;查看。
2、給將要進行數據導出的用戶授權訪問。
grant read,write on directory mpdir to test_expdp;
3、將數據導出
expdp test_expdp/test_expdp directory=mpdir mpfile=test_expdp_bak.dmp logfile=test_expdp_bak.log schemas=test_expdp
注意:這句話在cmd窗口中運行,並且最後不要加分號,否則會提示錯誤。因為這句話是操作系統命令而不是SQL。
impdp導入數據:
1、給將要進行數據導入的用戶授權訪問。
grant read,write on directory mpdir to test_impdp;
2、將數據導入
impdp test_impdp/impdp directory=mpdir mpfile=test_expdp_bak.dmp remap_schema=test_expdp:test_impdp

E. 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

F. 如何在Oracle中使用exp和imp導出,導入dmp資料庫文件

1、首先進入命令行,點擊開始,輸入cmd。

閱讀全文

與導出oracle資料庫命令相關的資料

熱點內容
為什麼主題解壓那麼慢 瀏覽:858
怎麼下載掃描二維碼的手機app 瀏覽:725
雲伺服器創建私有鏡像的時候一定要關機嗎 瀏覽:112
php開發學習門戶 瀏覽:385
傳奇游戲伺服器怎麼設置 瀏覽:823
敲擊東西解壓完整版 瀏覽:401
刺絡學pdf 瀏覽:868
怎麼給手機文件夾設置封面 瀏覽:931
汽車保養app怎麼用 瀏覽:62
線程javalock 瀏覽:896
c語言編譯運行結果查看器 瀏覽:112
androidpx轉dip 瀏覽:841
西藏編譯局是什麼級別 瀏覽:1001
php提交代碼 瀏覽:597
如何用命令查找並刪除代碼塊 瀏覽:582
python初學路線圖 瀏覽:534
matlab遺傳演算法旅行商問題 瀏覽:304
將辦公軟體加入加密軟體的進程 瀏覽:724
聯想小新pro14編譯器 瀏覽:462
為什麼伺服器要關掉icmp協議 瀏覽:855