//創建臨時表空間
'E:\\\10.2.0\\\.dbf'
size 32m
on
next 32m 2048m
local;
//創建數據表空間
'E:\\\10.2.0\\\.dbf'
size 32m
on
next 32m 2048m
local;
//創建用戶并指定表空間
user by
;
//給用戶授予權限
grant , to ; (db2:指定所有權限)
導入導出命令:
數據導入導出imp/exp就相當于數據還原與備份。exp命令可以把數據從遠程數據庫服務器導出到本地的dmp文件, imp命令可以把dmp文件從本地導入到遠處的數據庫服務器中。 利用這個功能可以構建兩個相同的數據庫,一個用來測試,一個用來正式使用。
執行環境:可以在.EXE或者DOS(命令行)中執行,
DOS中可以執行時由于 在 8i 中 安裝目錄被設置為全局路徑oracle創建臨時表空間,
該目錄下有EXP.EXE與IMP.EXE文件被用來執行導入導出。
用java編寫,.EXE、EXP.EXE、IMP.EXE這兩個文件有可能是被包裝后的類文件。
.EXE調用EXP.EXE、IMP.EXE所包裹的類,完成導入導出功能。
下面介紹的是導入導出的實例。
數據導出:
1 將數據庫TEST完全導出,用戶名 密碼 導出到D:.dmp中
/@=d:.dmp full=y
2 將數據庫中用戶與sys用戶的表導出
/@=d:.dmp owner=(,sys)
3 將數據庫中的表、導出
/@= d:.dmp =(,)
4 將數據庫中的表中的字段以"00"打頭的數據導出
/@=d:.dmp =() query=" where like '00%'"
上面是常用的導出,對于壓縮oracle創建臨時表空間,既用把dmp文件可以很好的壓縮。
也可以在上面命令后面 加上 =y 來實現。
數據的導入
1 將D:.dmp 中的數據導入 TEST數據庫中。
/@=d:.dmp
/@=y file=d:.dmp =y
上面可能有點問題,因為有的表已經存在,然后它就報錯,對該表就不進行導入。
在后面加上 =y 就可以了。
2 將d:.dmp中的表 導入
/@=d:.dmp =()
基本上上面的導入導出夠用了。不少情況要先是將表徹底刪除,然后導入。
注意:
操作者要有足夠的權限,權限不夠它會提示。
數據庫時可以連上的。可以用 TEST 來獲得數據庫TEST能否連上。
附錄一:
給用戶增加導入數據權限的操作
第一,啟動sql*puls
第二,以/登陸
第三, user 用戶名 BY 密碼 (如果已經創建過用戶,這步可以省略)
第四,GRANT USER,DROP USER,ALTER USER , ANY VIEW ,
DROP ANY VIEW,,,
DBA,,, TO 用戶名字
第五, 運行-cmd-進入dmp文件所在的目錄,
imp =/ full=y file=*.dmp
或者 imp =/ full=y file=.dmp
執行示例:
F:p>imp =test/test full=y file=.dmp
屏幕顯示
: 8.1.7.0.0 - on 星期四 2月 16 16:50:05 2006