oracle xtts遷移 AIX to Linux
以下是XTTS遷移的全過程,
需要根據實際情況更改,主要包括以下幾個流程:
檢查資料庫使用者自包含
準備 xtts 前期環境
進行全量備份並傳輸備份集到目標端
目標端進行全量恢復
源端目標端多次增量恢復
表空間 readonly 進行最後一次增量
後設資料匯入匯出
檢查物件
|
源端 |
目標端 |
Oracle 版本 |
10.2.0.3 |
11.2.0.4 |
作業系統 |
AIX 5.3 |
RHEL 6.7 |
是否 RAC |
否 |
是 |
資料庫名稱 |
oraold |
oranew |
本次只遷移 TESTUSER 使用者,只檢查 TESTUSER 使用者所在表空間的自包含驗證即可,無需額外操作。
SQL>
TABLESPACE_NAME
------------------------------
TESTUSER_DAT_4
TESTUSER_DAT_1
TESTUSER_DAT_2
TESTUSER_IDX_2
TESTUSER_DAT_3
TESTUSER_IDX_3
TESTUSER_ALL
TESTUSER_IDX_1
TESTUSER_IDX_4
9 rows selected.
SQL> execute dbms_tts.transport_set_check ,true,true);
PL/SQL procedure successfully completed.
SQL>
no rows selected
所需目錄
源端和目標端建立 相關 目錄
mkdir -p /exp/xtts/src_backup
mkdir -p /exp/xtts/tmp
mkdir -p /exp/xtts/dump
mkdir -p /exp/xtts/backup_incre
chown -R ora103:dba /exp/xtts
源端AIX上傳rman-xttconvert_2.0.zip至/exp/xtts
cd /exp/xtts
unzip rman-xttconvert_2.0.zip
目標端上傳rman-xttconvert_2.0.zip至/exp/xtts
cd /exp/xtts
unzip rman-xttconvert_2.0.zip
目標端建立其他相關目錄
mkdir -p /exp/xtts
mkdir -p /exp/xtts/src_backup
mkdir -p /exp/xtts/tmp
mkdir -p /exp/xtts/dump
mkdir -p /exp/xtts/backup_incre
chown -R ora11g:dba /exp/xtts
SQL>
Database altered.
SQL> ;
STATUS
----------
FILENAME
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
BYTES
----------
ENABLED
/exp/xtts/bct 11599872
關閉tracking可以使用如下命令完成:
配置源端AIX xtt.properties屬性檔案
cd /exp/xtts
vi
#增加如下配置資訊:
tablespaces=TESTUSER_DAT_4,TESTUSER_DAT_1,TESTUSER_DAT_2,TESTUSER_IDX_2,TESTUSER_DAT_3,TESTUSER_IDX_3,TESTUSER_ALL,TESTUSER_IDX_1,TESTUSER_IDX_4
platformid=6
dfcopydir=/exp/xtts/src_backup
backupformat=/exp/xtts/backup_incre
backupondest=/exp/xtts/backup_incre
stageondest=/exp/xtts/src_backup
storageondest=+DG_DATA/oranew/datafile
parallel=16
rollparallel=16
getfileparallel=6
配置目標端Linux xtt.properties屬性檔案
cd /exp/xtts
vi xtt.properties
#增加如下配置資訊:
tablespaces=TESTUSER_DAT_4,TESTUSER_DAT_1,TESTUSER_DAT_2,TESTUSER_IDX_2,TESTUSER_DAT_3,TESTUSER_IDX_3,TESTUSER_ALL,TESTUSER_IDX_1,TESTUSER_IDX_4
platformid=6
dfcopydir=/exp/xtts/src_backup
backupformat=/exp/xtts/backup_incre
backupondest=/exp/xtts/backup_incre
stageondest=/exp/xtts/backup_incre
storageondest=+DG_DATA/oranew/datafile
parallel=16
rollparallel=16
getfileparallel=6
asm_home=/opt/app/11.2.0/grid
asm_sid=+ASM1
以下命令為建立使用者命令參考,也可以使用 plsql 等工具生成類似相關資訊。使用者和角色必須手工建立。最好使用 plsql 拿出所需使用者的 ddl 以免漏掉許可權。
建立 EBPF 使用者,完成後設資料匯入後才可修改預設表空間
SQL> select name ,PASSWORD from user$ where name='TESTUSER';
NAME PASSWORD
------------------------------ ------------------------------
TESTUSER
create user TESTUSER identified by values 'C987AC3B738BCF43';
grant resource to TESTUSER;
grant alter session to TESTUSER;
grant create session to TESTUSER;
grant select any dictionary to TESTUSER;
grant unlimit tablespace to TESTUSER;
建立角色
賦予角色相應操作許可權
源端AIX執行被傳輸業務表空間全量備份建立xtts表空間全量備份指令碼執行過程中產生的配置檔案,用於資料檔案轉換及每次增量備份及恢復,同時每次執行增量備份過程中,配置檔案內容會發生變化,用於新的增量恢復,主要是SCN的變化。增加rman備份並行度
show all;
cd /exp/xtts
full_backup.sh指令碼內容如下
export ORACLE_SID=TESTUSER
export TMPDIR=/exp/xtts/tmp
export PERL5LIB=/opt/app/ora103/10.2.0/product/perl/lib
/opt/app/ora103/10.2.0/product/perl/bin/perl /exp/xtts/xttdriver.pl -p -d
執行全量備份
cd /exp/xtts
目標端Linux執行表空間恢復並將資料檔案轉換至ASM磁碟組中,每次恢復失敗時會在 /exp/xtts/tmp 產生fails檔案需要刪除後方可再次執行(做之前檢視下文中的特別說明步驟)
cd /exp/xtts
full_restore.sh指令碼內容如下
export TMPDIR=/exp/xtts/tmp
export ORACLE_SID=oranew1
/opt/app/ora11g/product/11.2.0/perl/bin/perl /exp/xtts/xttdriver.pl -c -d
執行恢復
> full_restore.log &
源端進行增量備份
cd /exp/xtts
增量備份指令碼incre_backup.sh內容如下
export ORACLE_SID=TESTUSER
export TMPDIR=/exp/xtts/tmp
export PERL5LIB=/opt/app/ora103/10.2.0/product/perl/lib
/opt/app/ora103/10.2.0/product/perl/bin/perl /exp/xtts/xttdriver.pl -i -d
執行增量備份
cd /exp/xtts
> incre_backup.log &
cd /exp/xtts
incre_recover.sh指令碼內容如下
export TMPDIR=/exp/xtts/tmp
export ORACLE_SID=oranew1
/opt/app/ora11g/product/11.2.0/perl/bin/perl /exp/xtts/xttdriver.pl -r -d
執行增量恢復
> incre_recover.log &
源端AIX將被傳輸業務表空間修改為READ ONLY狀態
--恢復
alter system set job_queue_processes=10;
select tablespace_name,status from dba_tablespaces order by 2;
alter tablespace TESTUSER_DAT_1 read only;
alter tablespace TESTUSER_DAT_2 read only;
alter tablespace TESTUSER_IDX_2 read only;
alter tablespace TESTUSER_DAT_3 read only;
alter tablespace TESTUSER_IDX_3 read only;
alter tablespace TESTUSER_ALL read only;
alter tablespace TESTUSER_IDX_1 read only;
alter tablespace TESTUSER_IDX_4 read only;
按照 2.4.1 、2.4.2完成最後一次增量備份與恢復。
目標端Linux開啟在匯入後設資料前開啟閃回
SQL> alter system set db_recovery_file_dest_size=50g scope=both;
System altered.
SQL> alter system set db_recovery_file_dest='+DG_DATA' scope=both;
System altered.
SQL> alter database flashback on;
Database altered.
SQL> select flashback_on from v$database;
FLASHBACK_ON
------------------
YES
SQL> create restore point before_imp_xtts guarantee flashback database;
Restore point created.
SQL> select name from v$restore_point;
後設資料
AIX 源端匯出XTTS後設資料
匯出表空間後設資料
expdp system/passwd parfile=expdp_xtts.par
expdp_xtts.par內容如下
directory=dump
dumpfile=tbs_xtts.dmp
logfile=expdp_xtts.log
transport_tablespaces=('TESTUSER_DAT_4','TESTUSER_DAT_1','TESTUSER_DAT_2','TESTUSER_IDX_2','TESTUSER_DAT_3','TESTUSER_IDX_3','TESTUSER_ALL','TESTUSER_IDX_1','TESTUSER_IDX_4')
transport_full_check=y
cluster=n
metrics=yes
匯出使用者後設資料
expdp system/passwd parfile=expdp_xtts_other.par
expdp_xtts_other.par內容如下
directory=dump
dumpfile=tbs_xtts_other.dmp
logfile=expdp_xtts_other.log
content=metadata_only
schemas=TESTUSER
metrics=yes
執行
cd /exp/xtts/dump
./expdp_xtts.sh
./expdp_xtts_other.sh
LINUX 目標端匯入後設資料
impdp system/passwd parfile=impdp_xtts.par
impdp_xtts.par內容如下
directory=dump
logfile=impdp_xtts.log
dumpfile=tbs_xtts.dmp
cluster=n
metrics=yes
transport_datafiles='+DG_DATA/ORANEW/DATAFILE/TESTUSER_ALL.456.995114385',
'+DG_DATA/ORANEW/DATAFILE/TESTUSER_DAT_1.532.995106883',
'+DG_DATA/ORANEW/DATAFILE/TESTUSER_DAT_1.528.995107837',
'+DG_DATA/ORANEW/DATAFILE/TESTUSER_DAT_1.524.995107839',
'+DG_DATA/ORANEW/DATAFILE/TESTUSER_DAT_1.543.995106883',
'+DG_DATA/ORANEW/DATAFILE/TESTUSER_IDX_2.496.995109429',
'+DG_DATA/ORANEW/DATAFILE/TESTUSER_IDX_4.432.995115329',
'+DG_DATA/ORANEW/DATAFILE/TESTUSER_IDX_4.430.995115329'
cd /exp/xtts/dump
./impdp_xtts.sh
LINUX 目標端表空間 readwrite
alter tablespace TESTUSER_DAT_1 read write;
alter tablespace TESTUSER_DAT_2 read write;
alter tablespace TESTUSER_IDX_2 read write;
alter tablespace TESTUSER_DAT_3 read write;
alter tablespace TESTUSER_IDX_3 read write;
alter tablespace TESTUSER_ALL read write;
alter tablespace TESTUSER_IDX_1 read write;
alter tablespace TESTUSER_IDX_4 read write;
目標端Linux在其他後設資料匯入前再次開啟閃回
sqlplus / as sysdba
select flashback_on from v$database;
create restore point before_imp_other guarantee flashback database;
select name from v$restore_point;
impdp system/passwd parfile=impdp_xtts_other.par
impdp_xtts_other.par 內容如下
directory=dump
dumpfile=tbs_xtts_other.dmp
logfile=impdp_xtts_other.log
content=metadata_only
schemas=TESTUSER
cluster=n
metrics=yes
執行
cd /exp/xtts/dump
./impdp_xtts_other.sh
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26964624/viewspace-2557295/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【XTTS】Oracle XTTS V4--Oracle11.2.0.4+ 遷移升級TTSOracle
- xtts遷移實踐TTS
- 超大資料量遷移方案,XTTS vs OGG大資料TTS
- xtts遷移時ORA-353處理TTS
- 【XTTS】使用XTTS傳輸表空間將Oracle11.2.0.4資料遷移至Oracle19CTTSOracle
- 【kingsql分享】Oracle跨版本遷移之XTTS_V4版本的實施SQLOracleTTS
- Oracle使用RMAN從Windows遷移資料到LinuxOracleWindowsLinux
- 記錄一次XTTS遷移碰到的問題TTS
- oracle遷移OCR盤Oracle
- Oracle遷移文件大全Oracle
- Oracle遷移文章大全Oracle
- 【XTTS】Oracle傳輸表空間xtts增量方式TTSOracle
- Oracle rman duplicate遷移測試Oracle
- oracle 19c pdb遷移Oracle
- AWS RDS Oracle資料遷移Oracle
- 【資料遷移】XTTS跨平臺傳輸表空間v4TTS
- Arch Linux 系統遷移Linux
- Oracle RAC 遷移替換 OCR 盤Oracle
- 遷移oracle使用者密碼Oracle密碼
- 連載一:Oracle遷移文件大全Oracle
- 連載二:Oracle遷移文章大全Oracle
- 使用GoldenGate 遷移Oracle到PostgreSQL/LightDBGoOracleSQL
- XTTS系列之一:U2L遷移解決方案之XTTS的使用TTS
- 【資料遷移】XTTS跨平臺傳輸表空間(1.傳統方式)TTS
- linux mysql資料庫遷移LinuxMySql資料庫
- 禪道遷移(windows_to_linux)WindowsLinux
- Win環境至Linux環境Oracle資料庫遷移全過程LinuxOracle資料庫
- 無外網Oracle資料庫遷移Oracle資料庫
- Oracle資料庫(DataGuard)遷移方案(上)Oracle資料庫
- Oracle資料庫(DataGuard)遷移方案(中)Oracle資料庫
- Oracle資料庫(DataGuard)遷移方案(下)Oracle資料庫
- Oracle中表空間、表、索引的遷移Oracle索引
- 【STATS】Oracle遷移表統計資訊Oracle
- Oracle資料庫遷移 - 異構傳輸表空間TTS HP-UX遷移至Redhat Linux 7.7Oracle資料庫TTSRedhatLinux
- 【DBA Part01】國產Linux上安裝Oracle進行資料遷移LinuxOracle
- aix安裝oracle客戶端AIOracle客戶端
- 模擬Oracle行遷移和行連結Oracle
- oracle RAC 更換儲存遷移資料Oracle