Oracle資料庫遷移(expdp與impdp)

2021-08-27 08:34:30 字數 1480 閱讀 3948

1、 原資料庫備份,備份為dmp檔案

1.1、sqlplus以dba 方式進入,建立邏輯目錄,該命令不會再硬碟中建立真正的目錄,使用dba賬戶建立:(需要在d盤先將目錄建好)

create or replace directory dmp as 『d:/dmp』

1.2檢視是否正確建立(硬碟中也要有這個目錄,oracle並不關心該目錄是否真的存在,如果不存在會報錯):

select * from dba_directories;

1.3目錄建立好之後,就可以把讀寫許可權授予特定使用者

grant read,write on directory dmp to mesn;

1.4 把expdp和impdp的許可權授予特定使用者

grant imp_full_database,exp_full_database to mesn;

grant connect,resource,dba to mesn;

1.5 expdp備份原資料庫(window命令列下)

expdp mesn/mesn123@mes schemas=mesn dumpfile=mes.dmp version=12.2.0.1.0 directory=dmp tables=cbo%

說明:

a、 expdp命令需要在window命令列下,而不是sqlplus命令列下;

b、 可以通過version指定到匯出的資料庫版本,比如原資料庫為12.2.0.1.0版本匯入到11.2.0.1.0資料庫中;

c、 通過schemas 可以限定需要匯出哪個使用者的表;

d、 通過tables可以限定需要匯出哪些表,多個表之間用逗號隔開,也支援萬用字元的形式;

e、 語句後邊不帶分號

2、 需要匯入資料庫,將dmp檔案匯入到資料庫

2.1相同使用者匯入

如果想往同名使用者中匯入資料,比如想要做資料的更新,需要刪除原來的使用者操作

2.1.1刪除原來mesn賬戶及賬戶下面的表

drop user tophrs cascade;

2.1.2重新建立mesn賬戶(與原來賬戶使用同樣的表空間,沒有表空間需要進行建立),並分配許可權

檢視臨時表空間sql:(該資料為執行時需要的,非必須)

select * from database_properties where property_name=』default_temp_tablespace』;

檢視表空間

select t.tablespace_name, round(sum(bytes / (1024 * 1024)), 0) ts_size

from dba_tablespaces t, dba_data_files d

where t.tablespace_name = d.tablespace_name

group by t.tablespace_name;

ORACLE資料庫遷移

oracle資料庫遷移過程 劉兵召寫於20081202 14 01 1.新建立兩個oracle使用者,new jbpm和old jbpm劉兵召寫於20081202 14 01 new jbpm 在原有資料庫基礎上更改過的資料庫 表結構發生變化,依然儲存著原來資料庫的一些資料 old jbpm 原有的...

oracle資料庫遷移

一 原始資訊記錄及複製 1.記錄欲遷移庫的sid,是否為歸檔模式 檢視方法 以sys使用者登入sqlplus後執行archive log list,建庫時預設為非歸檔模式 以及如下檔案的存放位置 引數檔案,密碼檔案,控制檔案,日誌檔案,資料檔案引數檔案存放在c oracle product 10.2...

Oracle資料庫遷移

1.登陸sqlplus a.在sqlplus登陸介面的使用者名稱中輸入 nolog,其他不用輸入 b.conn as sysdba2.刪除當前使用者級聯資訊 提示 ora 01940 無法刪除當前連線的使用者 時關閉所有資料庫連線,或者重啟服務列表中的db服務 如果遇到以下問題時 提示 ora 01...