這篇文章主要介紹Oracle 12C如何使用備份集執(zhí)行只讀表空間的跨平臺傳輸,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!
成都創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)公司是一家服務(wù)多年做網(wǎng)站建設(shè)策劃設(shè)計制作的公司,為廣大用戶提供了成都網(wǎng)站制作、做網(wǎng)站,成都網(wǎng)站設(shè)計,一元廣告,成都做網(wǎng)站選成都創(chuàng)新互聯(lián)公司,貼合企業(yè)需求,高性價比,滿足客戶不同層次的需求一站式服務(wù)歡迎致電。
使用帶用for transport或to platform子句的backup命令來創(chuàng)建備份集來將只讀表空間從一個平臺傳輸?shù)搅硪粋€平臺。當(dāng)傳輸只讀表空間時,必須要導(dǎo)出這些表空間的元數(shù)據(jù)。這些元數(shù)據(jù)會在將表空間附加到目標(biāo)數(shù)據(jù)庫時需要使用。當(dāng)跨平臺傳輸表空間時,源平臺與目標(biāo)平臺可以使用不同的字節(jié)序。可以還原跨平臺備份中的所有數(shù)據(jù)文件或表空間或者它們中的一部分。在還原這些對象之后,可以為被還原的數(shù)據(jù)文件指定路徑與名稱。
使用備份集執(zhí)行跨平臺傳輸表空間的先決條件
.源數(shù)據(jù)庫與目標(biāo)數(shù)據(jù)庫的spfile參數(shù)文件中的compatible參數(shù)必須設(shè)置為12.0.0或更高版本。
.被傳輸?shù)谋砜臻g必須是自包含。執(zhí)行dbms_tts.transport_set_check過程來檢查依賴性。如果transport_set_violations視圖包含指定表空間的相關(guān)行記錄,那么必須在創(chuàng)建跨平臺備份之前解決這種依賴性。
.被傳輸?shù)谋砜臻g必須是只讀模式,除非在backup命令中使用了allow inconsistent子句。
下面的例子將Linux平臺上的RAC CDB中的jypdb的表空間tts與cs傳輸?shù)絯indows平臺上的單實例CDB的jypdb數(shù)據(jù)庫中。使用備份集對只讀表空間執(zhí)行跨平臺傳輸?shù)牟僮魅缦?
1.檢查源數(shù)據(jù)庫與目標(biāo)數(shù)據(jù)庫的compatible參數(shù)是否設(shè)置為12.0.0或更高版本
源數(shù)據(jù)庫
SQL> show parameter compatible NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ compatible string 12.2.0 noncdb_compatible boolean FALSE 目標(biāo)數(shù)據(jù)庫 SQL> show parameter compatible NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ compatible string 12.2.0 noncdb_compatible boolean FALSE
2.對源數(shù)據(jù)庫中的要被傳輸?shù)谋砜臻gtts與cs執(zhí)行自包含檢查
SQL> alter session set container=jypdb; Session altered. SQL> exec sys.dbms_tts.transport_set_check('TTS,CS',true); PL/SQL procedure successfully completed. SQL> select * from sys.transport_set_violations; no rows selected
3.檢查源平臺與目標(biāo)平臺的字節(jié)序
源平臺
SQL> select d.platform_name,endian_format from v$transportable_platform tp,v$database d where tp.platform_name=d.platform_name; PLATFORM_NAME ENDIAN_FORMAT ----------------------------------------------------------------------------------------------------- -------------- Linux x86 64-bit Little
目標(biāo)平臺
SQL> select d.platform_name,endian_format from v$transportable_platform tp,v$database d where t PLATFORM_NAME ENDIAN_FORMAT -------------------------------------------------------------------------------- -------------- Microsoft Windows x86 64-bit Little
4.將要被傳輸?shù)谋砜臻g(tts,cs)設(shè)置為只讀狀態(tài)
SQL> alter tablespace tts read only; Tablespace altered. SQL> alter tablespace cs read only; Tablespace altered. SQL> select tablespace_name,status from user_tablespaces; TABLESPACE_NAME STATUS ------------------------------ --------- SYSTEM ONLINE SYSAUX ONLINE UNDOTBS1 ONLINE TEMP ONLINE UNDO_2 ONLINE USERS ONLINE TEST ONLINE TTS READ ONLY CS READ ONLY 9 rows selected.
5.給RMAN備份輸出文件選擇命名方法,使用backup命令的format子句來為備份輸出文件選擇輸出方法。
6.啟動RMAN連接到源數(shù)據(jù)庫(整個RAC CDB)并將重啟源數(shù)據(jù)庫并以只讀方式打開
[oracle@jytest1 ~]$ rman target sys/abcd@jy catalog rco/abcd@jypdb_173 Recovery Manager: Release 12.2.0.1.0 - Production on Mon Feb 5 23:22:24 2018 Copyright (c) 1982, 2017, Oracle and/or its affiliates. All rights reserved. connected to target database: JY (DBID=979425723) connected to recovery catalog database
7.在backup命令中使用for transport或to platform子句來備份表空間。下面的例子對表空間tts與cs創(chuàng)建跨平臺傳輸備份。備份可以被還原到Microsoft Windows IA (64-bit)平臺。Data Pump導(dǎo)出dump文件包含了附加表空間到目標(biāo)數(shù)據(jù)庫中所需要的元數(shù)據(jù)。備份文件與dump文件存儲在/ora_backup/tts目錄中。
RMAN> backup to platform 'Microsoft Windows x86 64-bit' format '/ora_backup/tts/trans_ts.bck' datapump format '/ora_backup/tts/trans_ts_dmp.bck' tablespace JYPDB:'TTS',JYPDB:'CS'; Starting backup at 05-FEB-18 using channel ORA_DISK_1 Running TRANSPORT_SET_CHECK on specified tablespaces TRANSPORT_SET_CHECK completed successfully Performing export of metadata for specified tablespaces... EXPDP> Starting "SYS"."TRANSPORT_EXP_JY_xput": EXPDP> Processing object type TRANSPORTABLE_EXPORT/INDEX_STATISTICS EXPDP> Processing object type TRANSPORTABLE_EXPORT/TABLE_STATISTICS EXPDP> Processing object type TRANSPORTABLE_EXPORT/STATISTICS/MARKER EXPDP> Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK EXPDP> Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK EXPDP> Processing object type TRANSPORTABLE_EXPORT/TABLE EXPDP> Processing object type TRANSPORTABLE_EXPORT/INDEX/INDEX EXPDP> Master table "SYS"."TRANSPORT_EXP_JY_xput" successfully loaded/unloaded EXPDP> ****************************************************************************** EXPDP> Dump file set for SYS.TRANSPORT_EXP_JY_xput is: EXPDP> /u01/app/oracle/product/12.2.0/db/dbs/backup_tts_JY_38873.dmp EXPDP> ****************************************************************************** EXPDP> Datafiles required for transportable tablespace CS: EXPDP> +DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/cs.294.966380783 EXPDP> Datafiles required for transportable tablespace TTS: EXPDP> +DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/tts.257.966380353 EXPDP> Job "SYS"."TRANSPORT_EXP_JY_xput" successfully completed at Mon Feb 5 23:57:57 2018 elapsed 0 00:03:08 Export completed channel ORA_DISK_1: starting full datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00022 name=+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/tts.257.966380353 input datafile file number=00023 name=+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/cs.294.966380783 channel ORA_DISK_1: starting piece 1 at 05-FEB-18 channel ORA_DISK_1: finished piece 1 at 05-FEB-18 piece handle=/ora_backup/tts/trans_ts.bck tag=TAG20180205T235319 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03 channel ORA_DISK_1: starting full datafile backup set input Data Pump dump file=/u01/app/oracle/product/12.2.0/db/dbs/backup_tts_JY_38873.dmp channel ORA_DISK_1: starting piece 1 at 05-FEB-18 channel ORA_DISK_1: finished piece 1 at 05-FEB-18 piece handle=/ora_backup/tts/trans_ts_dmp.bck tag=TAG20180205T235319 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01 Finished backup at 05-FEB-18 starting full resync of recovery catalog full resync complete [oracle@jytest1 tts]$ ls -lrt total 2472 -rw-r----- 1 oracle asmadmin 2318336 Feb 5 17:57 trans_ts.bck -rw-r----- 1 oracle asmadmin 212992 Feb 5 17:57 trans_ts_dmp.bck
因為在backup命令中使用了to platform子句,因此將數(shù)據(jù)文件轉(zhuǎn)換成目標(biāo)平臺字節(jié)序的操作在源平臺執(zhí)行。
8.將backup命令生成的備份集與Data Pump導(dǎo)出的dump文件傳輸?shù)侥繕?biāo)平臺的D:\app\oracle\oradata\tts目錄中
9.使用rman連接到目標(biāo)數(shù)據(jù)庫(單實例CDB中的JYPDB)
C:\Users\Administrator>rman target sys/abcd@jypdb 恢復(fù)管理器: Release 12.2.0.1.0 - Production on 星期一 2月 5 00:22:31 2018 Copyright (c) 1982, 2017, Oracle and/or its affiliates. All rights reserved. 已連接到目標(biāo)數(shù)據(jù)庫: JY:JYPDB (DBID=4203494064)
10.使用有foreign tablespace子句的restore命令來還原從源平臺傳輸過來的備份集
RMAN> restore foreign tablespace TTS,CS to new from backupset 'D:\app\oracle\oradata\tts\trans_ts.bck' dump file from backupset 'D:\app\oracle\oradata\tts\trans_ts_dmp.bck'; 從位于 06-2月 -18 的 restore 開始 使用目標(biāo)數(shù)據(jù)庫控制文件替代恢復(fù)目錄 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: SID=8 設(shè)備類型=DISK 通道 ORA_DISK_1: 正在開始還原數(shù)據(jù)文件備份集 通道 ORA_DISK_1: 正在指定從備份集還原的數(shù)據(jù)文件 通道 ORA_DISK_1: 正在還原外部表空間 TTS 中的所有文件 通道 ORA_DISK_1: 正在還原外部表空間 CS 中的所有文件 通道 ORA_DISK_1: 正在讀取備份片段 D:\app\oracle\oradata\tts\trans_ts.bck 通道 ORA_DISK_1: 將外部文件 22 還原到 D:\APP\ORACLE\ORADATA\JY\5F9AC6865E87549FE053AB828A0ADE94\DATAFILE\O1_MF_TTS_F7K17RGW_.DBF 通道 ORA_DISK_1: 將外部文件 23 還原到 D:\APP\ORACLE\ORADATA\JY\5F9AC6865E87549FE053AB828A0ADE94\DATAFILE\O1_MF_CS_F7K17RHC_.DBF 通道 ORA_DISK_1: 外部片段句柄 = D:\app\oracle\oradata\tts\trans_ts.bck 通道 ORA_DISK_1: 已還原備份片段 1 通道 ORA_DISK_1: 還原完成, 用時: 00:00:02 通道 ORA_DISK_1: 正在開始還原數(shù)據(jù)文件備份集 通道 ORA_DISK_1: 正在指定從備份集還原的數(shù)據(jù)文件 通道 ORA_DISK_1: 正在將數(shù)據(jù)泵轉(zhuǎn)儲文件還原到 D:\app\oracle\product\12.2.0\dbhome_1/dbs/backup_tts_JY_38586.dmp 通道 ORA_DISK_1: 正在讀取備份片段 D:\app\oracle\oradata\tts\trans_ts_dmp.bck 通道 ORA_DISK_1: 外部片段句柄 = D:\app\oracle\oradata\tts\trans_ts_dmp.bck 通道 ORA_DISK_1: 已還原備份片段 1 通道 ORA_DISK_1: 還原完成, 用時: 00:00:02 正在執(zhí)行元數(shù)據(jù)導(dǎo)入... IMPDP> 已成功加載/卸載了主表 "SYS"."TSPITR_IMP_JY_pfCp" IMPDP> 啟動 "SYS"."TSPITR_IMP_JY_pfCp": IMPDP> 處理對象類型 TRANSPORTABLE_EXPORT/PLUGTS_BLK IMPDP> 處理對象類型 TRANSPORTABLE_EXPORT/TABLE IMPDP> 處理對象類型 TRANSPORTABLE_EXPORT/INDEX/INDEX IMPDP> 處理對象類型 TRANSPORTABLE_EXPORT/INDEX_STATISTICS IMPDP> 處理對象類型 TRANSPORTABLE_EXPORT/TABLE_STATISTICS IMPDP> 處理對象類型 TRANSPORTABLE_EXPORT/STATISTICS/MARKER IMPDP> 處理對象類型 TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK IMPDP> 作業(yè) "SYS"."TSPITR_IMP_JY_pfCp" 已于 星期二 2月 6 00:24:02 2018 elapsed 0 00:00:33 成功完成 導(dǎo)入完畢 在 05-2月 -18 完成了 restore
11.在目標(biāo)數(shù)據(jù)庫中查詢表tts.t1與cs.t2記錄是否與源數(shù)據(jù)庫中一致,如果一致說用表空間tts與cs跨平臺傳輸成功
源數(shù)據(jù)庫
SQL> alter session set container=jypdb; 會話已更改。 SQL> select count(*) from tts.t1; COUNT(*) ---------- 45 SQL> select count(*) from cs.t2; COUNT(*) ---------- 46
目標(biāo)數(shù)據(jù)庫
SQL> alter session set container=jypdb; 會話已更改。 SQL> select count(*) from tts.t1; COUNT(*) ---------- 45 SQL> select count(*) from cs.t2; COUNT(*) ---------- 46
以上是“Oracle 12C如何使用備份集執(zhí)行只讀表空間的跨平臺傳輸”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
網(wǎng)站標(biāo)題:Oracle12C如何使用備份集執(zhí)行只讀表空間的跨平臺傳輸
當(dāng)前URL:http://www.chinadenli.net/article0/jogsio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、ChatGPT、靜態(tài)網(wǎng)站、動態(tài)網(wǎng)站、Google、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)