1、創建和設置表空間
CREATE TABLESPACE mydb2
DATAFILE 'D:\oracle\product\10.2.0\oradata\test\MYDB4.DBF'
SIZE 30M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED,
'D:\oracle\product\10.2.0\oradata\test\MYDB5.DBF'
SIZE 20M AUTOEXTEND ON NEXT 5 MAXSIZE 100M;
ALTER DATABASE DATAFILE 'D:\oracle\product\10.2.0\oradata\test\MYDB4.DBF' RESIZE 40M;
ALTER DATABASE DATAFILE 'D:\oracle\product\10.2.0\oradata\test\MYDB5.DBF'
AUTOEXTEND ON NEXT 10M
MAXSIZE UNLIMITED;
ps.
如果文件不存在,則 DATAFILE 需要 SIZE;如果文件存在,則 DATAFILE 需要指定 REUSE 關鍵字。
2、更改用戶默認表空間,并授權
ALTER USER kiant DEFAULT TABLESPACE mydb2;
SELECT USERNAME, DEFAULT_TABLESPACE FROM dba_users;
GRANT UNLIMITED TABLESPACE, DBA TO kiant;
3、創建表并插入測試數據
CREATE TABLE k7 (a1 VARCHAR2(255));
SELECT * FROM dba_tables WHERE table_name= 'K7';
INSERT INTO k7 SELECT sys_guid() FROM dual CONNECT BY LEVEL <=10000;
COMMIT;
SELECT * FROM k7 WHERE ROWNUM<=5;
4.1、用戶級數據導入導出
ALTER TABLESPACE mydb2 READ ONLY;
ho $ exp userid=kiant/love2you@test file=d:\123.dmp;
ALTER TABLESPACE mydb2 READ WRITE;
ho $ imp userid=kiant/love2you@test file=d:\123.dmp full=y ignore=y rows=n;
ho $ imp userid=kiant/love2you@test file=d:\123.dmp full=y ignore=y rows=y buffer=64000;
ps.
導入時應優先導入所有數據庫結構 rows=n;然后才導入結構和數據 rows=y。
4.2、表空間數據導入導出
ALTER TABLESPACE mydb2 READ ONLY;
ho $ exp userid=kiant/love2you@test file=d:\124.dmp tablespaces=mydb2;
ho $ imp userid=kiant/love2you@test file=d:\124.dmp tablespaces=mydb2 full=y ignore=y rows=n;
ho $ imp userid=kiant/love2you@test file=d:\124.dmp tablespaces=mydb2 full=y ignore=y rows=y buffer=64000;
4.3、表空間遷移
ALTER TABLESPACE mydb2 READ ONLY;
ho $ exp userid='sys/love2you as sysdba' file=d:\mydb2.dmp tablespaces=mydb2 transport_tablespace=y;
DROP TABLESPACE mydb2 INCLUDING CONTENTS;
ho $ imp userid='sys/love2you as sysdba' file=d:\mydb2.dmp tablespaces=mydb2 transport_tablespace=y
datafiles=D:\oracle\product\10.2.0\oradata\test\MYDB4.DBF, D:\oracle\product\10.2.0\oradata\test\MYDB5.DBF;
ps.
a.必須以 'sysdba' 身份連接,才能進行時間點恢復或可傳輸的表空間導入。
b.搬移表空間時,源表空間中存放的所有數據對象的所有者在目標數據庫中必須存在,如果不存在,則應在導入表空間之前建立相應的用戶,然后再導入表空間。
參考文件:
數據庫遷移幾種方式
[推薦]移動Oracle的表空間
使用Oracle 的 imp ,exp 命令實現數據的導入導出
Oracle利用傳輸表空間導出導入數據的步驟
posted on 2008-10-19 11:09
黃小二 閱讀(1806)
評論(0) 編輯 收藏 所屬分類:
[DB].Oracle