Oracle的exp、imp的資料遷移步驟

mengzhaoliang發表於2010-01-22

把AA資料庫遷移到BB資料庫
1、AA資料庫檢視使用者的預設表空間
select username,default_tablespace from dba_users where username='AA_Username'

2、檢視使用者的角色
select * from user_role_privs;


3、BB資料庫的資料檔案所在位置

SQL> select name from v$datafile;

NAME                                                                           
--------------------------------------------------------------------------------
D:\ORACLE\PRODUCT\10.2.0\ORADATA\CCOMS\SYSTEM01.DBF                            
D:\ORACLE\PRODUCT\10.2.0\ORADATA\CCOMS\UNDOTBS01.DBF                           
D:\ORACLE\PRODUCT\10.2.0\ORADATA\CCOMS\SYSAUX01.DBF                            
D:\ORACLE\PRODUCT\10.2.0\ORADATA\CCOMS\USERS01.DBF                             
D:\ORACLE\PRODUCT\10.2.0\ORADATA\CCOMS\EXAMPLE01.DBF                           

4、BB資料庫建立使用者使用的預設表空間,資料檔案自動擴充套件
SQL> create tablespace BB_default_space
  2  datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\CCOMS\BB_default_space.DBF'
  3  size 5M autoextend on;

表空間已建立。

5、BB資料庫建立新使用者
SQL> create user BB_Username
  2  identified by BB_Username000
  3  default tablespace AA_default_space;

使用者已建立。

6、BB資料庫授權給新使用者
SQL> grant connect,resource,dba to BB_Username;

授權成功。

7、BB資料庫配置listener.ora 和 tnsnames.ora
配置ip,以便外面可以訪問
listener.ora檔案:

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
  )


LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = BB_IP)(PORT = 1521))
    )
  )

tnsnames.ora檔案:
BB_Username =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = BB_IP)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = BB_Username)
    )
  )

  修改監聽器配置檔案,需要重新啟動監聽器
  關閉監聽器:lsnrctl stop
  重啟監聽器:lsnrctl start


8、在另一個資料庫(配置方便使用plsql)配置tnsnames。ora
 BB_Username =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = BB_IP)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = BB_Username)
    )
  )


9、在AA資料庫查詢使用者下都用把資料放到哪些表空間中,建立相應的表空間

select distinct tablespace_name from user_segments
where tablespace_name not in ('USERS','USERS02')

10、生成下面的指令碼,用plsql匯入到BB資料庫中
CREATE TABLESPACE DRILL_LOB_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\TEST_LOB_SPACE.DBF' size 5M autoextend on;
CREATE TABLESPACE DH_LOB_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\_LOB_SPACE DATAFILE.DBF' size 5M autoextend on;
CREATE TABLESPACE TEST_NORM_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\TEST_NORM_SPACE DATAFILE.DBF' size 5M autoextend on;
CREATE TABLESPACE LOG_LOB_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\LOG_LOB_SPACE DATAFILE.DBF' size 5M autoextend on;
CREATE TABLESPACE MLOG_NORM_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\MLOG_NORM_SPACE.DBF' size 5M autoextend on;
CREATE TABLESPACE MLOG_LOB_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\MLOG_LOB_SPACE.DBF' size 5M autoextend on;
CREATE TABLESPACE LOG_NORM_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\LOG_NORM_SPACE.DBF' size 5M autoextend on;
CREATE TABLESPACE HHH_NORM_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\HHH_NORM_SPACE DATAFILE.DBF' size 5M autoextend on;
CREATE TABLESPACE GPE_NORM_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\HHDS_NORM_SPACE DATAFIL.DBF' size 5M autoextend on;
CREATE TABLESPACE HHDS_LOB_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\HHDS_LOB_SPACE DATAFILE.DBF' size 5M autoextend on;
CREATE TABLESPACE PUB_NORM_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\PUB_NORM_SPACE DATAFILE.DBF' size 5M autoextend on;
CREATE TABLESPACE PUB_LOB_SPACE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BB_Username\BBII_LOB_SPACE DATAFILE.DBF' size 5M autoextend on;

11、匯出AA資料庫的資料
exp file=F:\AA_Databaseoraclebak\AA_Database14.dump log=F:\AA_Databaseoraclebak\AA_Database14.log

12、匯入BB資料庫的資料:不需要使用者授權許可權

imp FROMUSER=AA_Username  TOUSER=BB_Username ignore=yes grants=no  file=F:\AA_Databaseoraclebak\AA_Database14.dump  log=F:\AA_Databaseoraclebak\IMP20100121BB_Username.log

 


 

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

相關文章