⑴ 怎樣導出oracle整個資料庫
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%'\"
上面是常用的導出,對於壓縮我不太在意,用winzip把dmp文件可以很好的壓縮。
不過在上面命令後面 加上 compress=y 就可以了
⑵ 請問oracle資料庫如何導出資料庫的表結構
oracle資料庫導出資料庫的表結構:
1、電腦鍵盤同時按windows鍵和R鍵
(2)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使用。
⑶ 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
⑷ oracle 怎麼導出資料庫中的表
oracle資料庫要導出表,有兩種方法,一種是使用命令行導出,另一種是使用PLSQL軟體來導。使用PLSQL軟體是在圖形化界面下進行操作,較為簡單。下面小編介紹下如何使用PLSQL將oracle資料庫的表導出。
工具/原料
oracle資料庫
PLSQL
方法/步驟
首先在電腦上安裝並打開PLSQL軟體,如圖所示:
輸入資料庫名、用戶和密碼後,點擊「確定」,登錄資料庫,如圖所示:
登錄成功後,左邊「對象」中找到「table",並點擊展開目錄,如圖所示:
在「table」下找到需要導出的表,在表上點擊右鍵,打開右鍵菜單,如圖所示:
在右鍵菜單上,點擊「導出數據」,打開「導出」界面,如圖所示:
在「導出」界面,設置完輸出文件的路徑和文件名後,點擊「導出」按鈕,導出資料庫的表,如圖所示:
導出完成後,可以查看導出日誌,如圖所示:
最後我們看一下導出的文件,這里注意了,導出文件的後綴名是「.dmp」,如圖所示:
⑸ 怎樣導出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 就可以了
⑹ 如何在Oracle中使用exp和imp導出,導入dmp資料庫文件
1、首先進入命令行,點擊開始,輸入cmd。
⑺ oracle如何導出資料庫表所有數據
你好
你可以使用exp 護著expdp 來進行表的導出導入
如果數據量大的話,你還可以使用RMAN來操作
或者使用XTTS進行遷移,
再或者,直接遷移存儲
望採納
⑻ Oracle的導入導出命令是什麼
用exp、imp試試x0dx0a導出全庫>>>>>>x0dx0a導入鉛蘆宴:導嘩物入之前需創造一個空庫槐銀(可以和前一個庫名不一樣)、一個一樣的用戶x0dx0acmd>>x0dx0aimp username/password@資料庫名稱 file=文件路徑 full=Yx0dx0a導出:x0dx0aexp username/password@資料庫名稱 file=文件路徑(生成的文件)x0dx0a我導出的時候文件直接設成.sql,蠻好 x0dx0ax0dx0a導出部分表>>>>x0dx0a打開cmdx0dx0a導出表,確定監聽是否開啟,資料庫服務是否開啟x0dx0aexp scott/tiger@orcl file=F:\sign.sql tables=表名,表名 grants=yx0dx0ax0dx0a導入表,確定新資料庫服務是否開啟x0dx0aimp scott/tiger@資料庫名 file=F:\sign.sql fromuser=scott ignore=y commit=y grants=y
⑼ Oracle如何批量導出資料庫表結構
第1個方春純法:用pl/sql的【工具】-【導出用戶對象】即可
第扒御咐2個方法:用EXP命令
exp 用戶名/密碼@資料庫服務名 rows=n
第3個方法:用sys用戶登錄資料庫
select * from all_tab_cols where owner='用戶名' AND TABLE_NAME='拆首表名';