exp/imp工具

peng163fj發表於2015-04-13

幾點注意:

oracle11g的exp不會匯出空表,所以用expdp最好

報錯要第一時間看,匯入要注意tablespace和user的建立

user:

create user OADEMO

  profile default 

    identified by OADEMO

    default tablespace OADATA

    temporary tablespace temp

    quota unlimited on OADATA

    account unlock;

grant unlimited tablespace to OADEMO;

grant connect to OADEMO;

grant dba to OADEMO;

grant resource to OADEMO



Create tablespace USERS

logging

datafile 'd:\USERS.dbf' size 100m

autoextend on next 100m maxsize 1000m

extent management local AUTOALLOCATE;

  

  

  SELECT * FROM DBA_TABLES WHERE TABLESPACE_NAME LIKE 'OA%'

  selet




-------------------------導資料許可權--------------------------------------------------------


只有擁有IMP_FULL_DATABASE和DBA許可權的使用者才能做整個資料庫匯入

imp步驟:

(1) create table (2) insert data (3) create index (4) create triggers,constraints


-------------------------匯出資料--------------------------------------------------------


匯出資料:

exp userid=testu/testu owner=OADEMO INDEXES=y grants=y rows=y constraints=y compress=N file=ORACLEDATA.DMP


-------------------------匯入資料--------------------------------------------------------


匯入資料:

a.需要確認原來資料庫表空間大小   b.確認原來資料庫大欄位用的表空間 c.確定索引所在的表空間


1.

建立一般表空間(表空間的大小應該根據原來表空間大小確定)

Create tablespace ERPDATA

logging

datafile 'd:\ERPDATAINFO2.dbf' size 100m

autoextend on next 100m maxsize 1000m

extent management local AUTOALLOCATE;


建立大欄位表空間

以下這個表空間資料塊為16K,因此要確認原資料庫有沒有16或32的表空間,如果有,那麼要先建表空間,並現在建立表空間名字與原來表空間名字必須一樣

alter system set db_16k_cache_size=100m scope=both;

CREATE SMALLFILE 

    TABLESPACE "BLOBDATA" 

    LOGGING 

    DATAFILE 

    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\BLOBDATE3.ora' SIZE 5M

    REUSE BLOCKSIZE 16384 EXTENT MANAGEMENT LOCAL SEGMENT SPACE 

    MANAGEMENT  AUTO 


建立索引表空間(表空間的大小應該根據原來表空間大小確定)

注意:如果不單獨建立索引表空間,那麼索引會預設到當前使用者下的表空間。

Create tablespace IDNEXERPDATA

logging

datafile 'd:\ERPDATAINFINDX.dbf' size 100m

autoextend on next 100m maxsize 1000m

extent management local AUTOALLOCATE;


2.create user scuser

profile default 

    identified by scuser

    default tablespace ERPDATA

    temporary tablespace temp

    quota unlimited on ERPDATA

    account unlock;

grant unlimited tablespace to scuser;

grant connect to scuser;

3.imp testu/testu file =ORACLEDATA.DMP show=n buffer=2048000 ignore=y commit=y grants=y full=y log=imp_data.log



create directory expdp_dir as 'D:\dp'; 

grant read,write on directory expdp_dir to testu; 


expdp testu/testu DIRECTORY=expdp_dir DUMPFILE=oa.dmp SCHEMAS=OADEMO logfile=DRGN_OWNERexpdp.log 



create directory impdp_dir as ''D:\dp'; 

grant read,write on directory impdp_dir to testu; 


impdp testu/testu DIRECTORY=impdp_dir DUMPFILE=oa.dmp logfile=oa.log


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21302630/viewspace-1571835/,如需轉載,請註明出處,否則將追究法律責任。