** oracle資料庫中進行資料的匯入匯出時要在cmd中進行而不是在sqlplus中進行操作!
(1)向oracle資料庫中匯入完整的資料庫(字尾名:dmp)
首先進入cmd,輸入sqlplus /nolog執行oracle自帶程式,然後輸入conn /as sysdba,以資料庫管理員(dba)的身份鏈結到後台資料庫 ,也就是進入資料庫建立表空間,建立使用者並將這個表空間授權給這個使用者,並且給這個使用者授予dba,connect ,resource
等許可權,在退出早cmd或重新開啟視窗倒cmd進行imp 命令匯入。
step1:
建立臨時表空間
(取名為
:libsys_temp)
create
temporary
tablespacelibsys_temp
tempfile
'd:\oracle\libsys_temp.dbf'
// 指定空間存放路徑
size
1000m
//為臨時表空間分配磁碟空間
autoextend
on next 10m
maxsize 2048m
//若存入的資料量超過了分配的空間大小,
//則以每次新增
10m的大小增大表間,但最大為
2048m
,// 而也可以使用unlimited 沒有最大值的限制。
extent management local;
//設定表空間的區管理為本地管理,為的是減少分配
extent的時
//候產生的內部遞迴sql,提高資料庫分配空間的效率.
step2:
建立資料表空間,用於儲存匯入的資料庫中的所有資料
(取名:
libsys_data)
create tablespace libsys_data
logging
//指明匯入過程記入日誌中
datafile
'd:\oracle\libsys_ data.dbf'
//指定資料庫儲存的路徑
size 10240m
//注意表空間應足夠大,否則匯入將出錯!
autoextend on
next 100m maxsize 20480m
extent management local;
step3:
建立使用者並指定表空間(需擁有
dba許可權)
createuser libsys identified by abc123
//設定使用者名稱:
libsys,
碼:abc123.
default tablespace libsys _data
//為使用者指定剛剛建立的表空間
libsys_data,
以便儲存與此使用者相關的所有資料
.temporary tablespace libsys_temp; //
為使用者指定臨時表空間
libsys_temp,
以提高資料庫執行效率
.
step4:
給使用者授權
(需授予
dba,connect
和resource
三個許可權,否則無法完成資料庫匯入
)grant dba,connect,resource to libsys ;
step5:
將拷貝來的完整的資料庫檔案
(此處為
:'libsys.dmp')
匯入到自己機器中的
oracle
資料庫中
imp libsys/abc123 file='d:\libsys.dmp' full=y ignore=y;
//full=y表示全部匯入,ignore=y表示忽略資料庫中已存在的表,否則可能出錯。如果有資料則不會更改而 如果沒有則會進行修改。
(特別注意
:在進行
step5
之前,需要輸入「
exit」
命令退出並返回到
'cmd'
命令後,才能做匯入匯出操作
!!!!)
另外:若只想將資料庫
dmp檔案中的部分表
(此處為
:item表)
匯入,則只需加上表名即可,方法如下:
imp libsys/abc123file='d:\libsys.dmp'
tables=(item);
//其中的
item
為libsys.dmp
資料庫檔案中的一張表物件
.(2)
將oracle
資料庫中的資料匯出
a. 匯出完整的資料庫(此處資料庫為:libsys_data):
exp libsys/abc123 file='d:\oracle\libsys.dmp' full=y; //full=y
表示全部匯出.
b. 將指定使用者的資料表匯出
(此處為:使用者
xdw和使用者
newuser)
:explibsys/abc123 file='d:\oracle\libsys.dmp'
owner=(xdw,newuser);
c.匯出指定的資料庫中的表(此處為:student表和teacher表):
exp libsys/abc123 file='d:\oracle\libsys.dmp'
tables=(student,teacher);
d.匯出資料庫中表的指定字段
(此處為
:學生姓名中的姓為"王
")的資料
(此處為:
student表):
exp libsys/abc123 file='d:\oracle\libsys.dmp' tables=(student)
query=\"where studentnamelike '
王%'\";
ORACLE 11g 匯出資料
oracle 11g 匯出 表的時候 不會匯出空表 匯出空表操作步驟 使用plsql 1 開啟sql window 執行下面的 sql select alter table table name allocate extent from user tables where segment creat...
Oracle11g的匯入與匯出
oracle11g用exp匯出資料庫的時候,空表是導不出來的,所以必須用資料幫浦匯入匯出oracle資料庫。1 expdp sql create directory 目錄名 如 dmpbx as 儲存位址 如 root usr 目錄已建立。sql grant read,write on direct...
oracle 11g 命令 匯入 匯出表
資料匯出 1 將資料庫test完全匯出,使用者名稱system 密碼manager 匯出到d daochu.dmp中exp system manager test file d daochu.dmp 2 將資料庫中system使用者與sys使用者的表匯出exp system manager test...