oracle 導入和導出
導出
導出具體得分爲:導出表,導出方案,導出數據庫三中方式
導出使用exp命令來完成得,該命令常用得選項有:
userId:用於指定執行導出操作的用戶名,口令,連接字符串
tables:用於執行導出操作得表
owner:用於執行導出操作得方案
full=y:用於指定執行導出操作得數據庫
inctype:用於指定執行導出操作得增量類型
rows:用於指定執行導出操作是否要導出表中得數據
file:用於指定導出得文件名
導出表(注意:在導入和導出得時候要到oracle主目錄的bin目錄下)
(1)導出自己得表(可導出多個表)
Exp userid=scott/tiger@myoral tables=(emp, kkk,.) file=d:\e2.dmp;
(2)導出其他人得表
如果用戶要導出其它方案得表,則需要dba得權限或者是
Exp_full_database得權限,比如system就可以導出scott得表
Exp userid=system/manager@myoral tables=(scott.emp) file=d:\e2.dmp
(3)導出表得結構
Exp userid = scott/tiger@accp tables = (emp) file=d:\e3.dmp rows=n
(4)使用直接導出方式
Exp userid = scott/tiger@accp tables=(emp) file=d:\e3.dmp direct=y
這種方式比默認得常規方式速度要快,當數據量大得時候,可以考慮使用這樣得方式
這時需要數據庫得字符集要與客戶端字符集完全一致,否則會報錯
導出方案
導出方案是指使用export 工具導出一個方案或是多個方案中得所有對象(表,索引,約束…..)和數據庫,並存放到文件中。(owner=那個用戶)
(1) 導出自己得方案
Exp scott/tigger@myoral owner = scott file=d:\scott.dmp
(2) 導出其它得方案
如果用戶要導出其它得方案,則需要dba得權限或是
Exp_full_database 權限,例如system用戶就可以導出任何方案
Exp system/manager@myoral owner = (system,scott) file=d:\system.dmp
導出數據庫
導出數據庫是指利用export導出所有數據庫中得對象及數據,要求改用戶具有dba得權限或是exp_full_database權限(增量備份比較快下次備份)
Exp userId=system/manager@myoral full=y inctype=complete file=d:/x.dmp
導入(找到對應導出得表得文件)
導入就是使用工具import 將文件中得對象和數據導入到數據庫中,但是導入要使用得文件必須是export所導出得文件,導出相似,導入液分爲導入表,導入方案,導入數據庫三種方式。
Imp常用得選項有
UserId:用於指定執行導入得用戶名,口令,連接字符串
Tables:用於指定執行導入操作得表
Formuser:用於指定源用戶
Touser:用於指定目標用戶
File:用於指定導入文件名
Full=y:用於指定執行導入整個文件
Inctype:用於指定執行導入操作得增量類型
Rows:指定是否要導入錶行(數據)
Ignore:如果表存在,則只執行導入數據
(1) 導入表
Imp userid=scott/tiger@myor tables=(emp) file=d:\xx.dmp
(2)導入表到其他用戶
要求改用戶具有dba權限,或是imp_full_database
Imp userid=system/manager@myor tables=(emp) file=d:\xx.dmp touser=scott
(3)導入表得結構
只導入表得結構而不導入表得數據
Imp userid=soctt/tiger@myor tables=(emp) file=d:\xx.dmp rows=n
(4)導入表數據
如果對象(比如表)已經存在可以只導入表得數據
Imp userid=scott/tiger@myor tables=(emp) file=d:\xx.dmp Ignore=y
數據字典
數據字典記錄了數據庫得系統信息,它是隻讀表和視圖得集合,數據字典得所有者爲sys用戶。
用戶只能在數據字典上執行查詢操作(select 語句) ,而其維護和修改時由系統自動完成得。
這裏我們談談數據字典得組成:數據字典包括數據字典基表和數據字典視圖,其中基表存儲數據庫得基本信息。普通用戶不能直接訪問數據庫得基表信息,數據字典視圖是基於數據字典基表所建立的視圖,普通用戶可以通過查詢數據字典視圖取得系統信息,數據字典視圖包括:user_xxx , all_xxx, dba_xxx三種類型
User_tables
用於顯示當前用戶所擁有得所有表,它只返回用戶對應方案得所有表
例如:Select table_name from user_tables;
All_tables
用於顯示當前用戶可以訪問得所有表,它不僅返回當前用戶方案得所有表,還會返回當前可以訪問得其它方案得表
比如:select table_name from all_tables;
Dba_tables
它會顯示所有方案擁有得數據庫表,但是查詢這種數據庫字典視圖,要求用戶必須是dba角色或是select any table 系統權限。例如:當system用戶查詢數據字典視圖dba_tables時,會返回system,sys,scott……方案所有對應得數據庫表
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.