oracle高版本遷移資料到低版本(12c至11g)方法
1.12c版本資訊:
2.11g版本資訊:
3.檢視12c的字符集編碼:
select userenv('language') from dual;
要遷移的兩個資料庫字符集編碼要保持一致。如果不一致請手工修改,修改方法另行百度。
4.檢視11g資料庫字符集編碼:
5.檢視12c資料庫,要匯出使用者所使用表空間(本案例使用者:lopyczl):
select tablespace_name from dba_segments where owner=upper('lopyczl') group by tablespace_name;
6.建立directory dumpdir(如果已有忽略,d:\dumpdir實際檔案目錄一定要存在)
create directory dumpdir as 'd:\dumpdir';
7.匯出12c資料庫的lopyczl使用者資料:
命令:expdp directory=dumpdir dumpfile=lopyczl.dmp logfile=lopyczl.log schemas=lopyczl version=11.2.0.1.0
註釋:version引數即11g的版本號,等待執行完畢會生成lopyczl.dmp檔案,後續用該檔案匯入到11g資料庫中;日誌檔案lopyczl.log記錄匯出情況。匯出結束,檢視日誌:
可見匯出成功。
8.到11g資料庫主機進行資料還原操作
(1)檢查字符集編碼
(2)建立使用者lopyczl,並且建立表空間SDT,表空間大小要大於使用者資料
(3)建立directory dumpdir,儘量跟12c的路徑一致
(4)執行匯入:
impdp directory=dumpdir dumpfile=lopyczl.dmp logfile=lopyczl.log
檢視日誌: