版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
數(shù)據(jù)驅(qū)動(dòng)成就未來密級(jí):商密云和恩墨(北京)信息技術(shù)有限公司版權(quán)所有,嚴(yán)禁翻印3/4Oracle數(shù)據(jù)遷移增量備份的XTTSXTTSwithCrossPlatformIncrementalBackups
目錄1. 概述 51.1.傳統(tǒng)的跨平臺(tái)傳輸表空間 51.2.跨平臺(tái)增量備份傳輸表空間 51.3.跨平臺(tái)增量備份支持腳本 61.4.限制 62. 遷移前準(zhǔn)備 62.1.源數(shù)據(jù)庫檢查 102.2.數(shù)據(jù)庫目標(biāo)端補(bǔ)丁情況檢查。 102.3.對(duì)比新舊環(huán)境用戶 102.4.目標(biāo)數(shù)據(jù)庫表空間檢查 112.5.對(duì)象的檢查 112.6.檢查時(shí)區(qū) 142.7.字符集的檢查 152.8.檢查目標(biāo)端補(bǔ)丁情況 162.9.組件安裝情況檢查 172.10.IOT檢查是否使用了KeyCompression的索引組織表 172.11.檢查源端是否有Cluster對(duì)象 172.12.檢查RMAN 182.13.檢查源端Compatible參數(shù) 182.14.檢查表有沒有空段 182.15.失效對(duì)象檢查。 182.16.基于XMLSchema的HMLType對(duì)象檢查。 192.17.目標(biāo)端創(chuàng)建檢查用DBlink。 192.18.檢查源數(shù)據(jù)庫的目標(biāo)庫具有重復(fù)名稱的表空間。 192.19.檢查是否存在應(yīng)用用戶建在system、sysaux、users上的情況。 192.20.SYS、SYSTEM用戶是否有對(duì)象存在于業(yè)務(wù)表空間 192.21.表空間自包含的檢查 192.22.檢查BCT(BlockChangeTracking)功能 202.23.檢查目標(biāo)端的DB_FILES參數(shù) 202.24.確認(rèn)生產(chǎn)庫的recyclebin功能是關(guān)閉,并手工清空回收站 202.25.數(shù)據(jù)文件狀態(tài)檢查 202.26.關(guān)閉統(tǒng)計(jì)信息 212.27.調(diào)整job參數(shù)(目標(biāo)端) 212.28.用戶測試數(shù)據(jù)(用戶元數(shù)據(jù)) 212.29.軟件包上傳 223. 遷移準(zhǔn)備 223.1.避免每次恢復(fù)都需要重啟 223.2.元數(shù)據(jù)導(dǎo)入提速 233.3.遷移建議:減少批次, 233.4.配置文件說明:xttdriver.pl 233.5.perties 243.6.xttdriver.plOptions 263.7.調(diào)試模式 273.8.執(zhí)行報(bào)錯(cuò) 273.9.參考可能的相關(guān)BUG 274. 遷移V3(11g從單機(jī)遷移到RAC) 274.1.階段1-初始化設(shè)置 274.1.1.安裝目標(biāo)數(shù)據(jù)庫軟件和目標(biāo)數(shù)據(jù)庫 284.1.2.增量轉(zhuǎn)換實(shí)例(根據(jù)需要) 284.1.3.標(biāo)識(shí)要傳輸?shù)谋砜臻g 284.1.4.配置Directory和DBLINK(DFT) 284.1.5.創(chuàng)建臨時(shí)區(qū)域(RMAN) 294.1.6.在源系統(tǒng)上安裝xttconvert
轉(zhuǎn)換腳本 294.1.7.在源系統(tǒng)上配置參數(shù)perties 294.1.8.復(fù)制配置xtt的轉(zhuǎn)換腳本和perties到目標(biāo)系統(tǒng) 294.1.9.設(shè)置臨時(shí)目錄 304.2.階段2-準(zhǔn)備階段RMAN(RecoveryManager) 304.2.1.在源系統(tǒng)上運(yùn)行準(zhǔn)備步驟 304.2.2.傳輸源系統(tǒng)上的副本到目標(biāo)系統(tǒng) 314.2.3.在目標(biāo)系統(tǒng)轉(zhuǎn)換數(shù)據(jù)文件 324.3.階段2-(推薦)準(zhǔn)備階段DFT(dbms_file_transfer) 324.3.1.在源系統(tǒng)上運(yùn)行準(zhǔn)備步驟 334.3.2.傳輸數(shù)據(jù)文件到目標(biāo)系統(tǒng) 334.4.階段3-增量階段(RollForwardPhase) 344.4.1.為源系統(tǒng)上傳輸?shù)谋砜臻g創(chuàng)建增量備份 344.4.2.將增量備份傳輸?shù)侥繕?biāo)系統(tǒng) 354.4.3.轉(zhuǎn)換增量備份并應(yīng)用到目標(biāo)系統(tǒng)上的數(shù)據(jù)文件副本 354.4.4.確定下一次增量備份的起始備份號(hào) 364.4.5.重復(fù)前滾階段(階段3)或進(jìn)入運(yùn)輸階段(階段4) 364.5.階段4-轉(zhuǎn)換階段(TransportPhase) 374.5.1.使源數(shù)據(jù)庫中的源表空間為只讀 374.5.2.創(chuàng)建最終增量備份、傳輸、轉(zhuǎn)換并將其應(yīng)用到目標(biāo)數(shù)據(jù)文件 374.5.3.將對(duì)象元數(shù)據(jù)導(dǎo)入目標(biāo)數(shù)據(jù)庫 374.5.4.使表空間在目標(biāo)數(shù)據(jù)庫中讀寫 394.5.5.驗(yàn)證傳輸?shù)臄?shù)據(jù) 394.6.階段5-清理(Cleanup) 404.7.目標(biāo)數(shù)據(jù)庫最后檢查調(diào)整 404.7.1.恢復(fù)自動(dòng)統(tǒng)計(jì)信息收集 404.7.2.恢復(fù)job調(diào)度任務(wù) 414.7.3.恢復(fù)用戶默認(rèn)表空間 414.7.4.檢查臨時(shí)表空間、UNDO表空間 414.7.5.導(dǎo)出、導(dǎo)入、檢查用戶元數(shù)據(jù) 414.7.6.檢查Profile 424.7.7.檢查無效對(duì)象 435. 手工XTTS遷移(從11204單機(jī)遷移到PDB) 435.1.前期準(zhǔn)備(重要) 435.1.1.字符集檢查 435.1.2.時(shí)區(qū)檢查 435.1.3.db_files參數(shù)檢查 435.1.4.rman配置檢查 435.1.5.平臺(tái)檢查 445.1.6.表空間datafile檢查 445.1.7.識(shí)別遷移用戶 445.1.8.將非系統(tǒng)對(duì)象移除system,sysaux表空間 445.1.9.處理系統(tǒng)對(duì)象存在于業(yè)務(wù)表空間 445.1.10.表空間信息采集 445.1.11.temp表空間信息采集 445.1.12.修改BCT加快增量備份 445.1.13.調(diào)整job參數(shù)(目標(biāo)端) 445.1.14.清理users表空間(目標(biāo)端) 445.1.15.創(chuàng)建用戶 445.1.16.IOT表檢查 455.1.17.dbms_backup_restore.backupBackupPiece包體函數(shù) 455.1.18.dbms_backup_restore.applyDatafileTo 495.1.19.dbms_backup_restore.restoreSetPiece 525.2.RMAN備份 525.2.1.查詢開始的scn 525.2.2.源端備份數(shù)據(jù)文件backupcopy 525.2.3.目標(biāo)端轉(zhuǎn)換數(shù)據(jù)文件rmanconvert 535.2.4.源端記錄scn 545.2.5.源端備份增量備份 555.2.6.目標(biāo)端增量轉(zhuǎn)換convert 565.2.7.目標(biāo)端應(yīng)用convert后的增量備份 575.2.8.可多次重復(fù)4,5,6,7步 595.3.正式遷移 595.3.1.源端關(guān)閉監(jiān)聽,kill會(huì)話,禁用job 595.3.2.表空間只讀 595.3.3.檢查分布式事物,檢查表空間只讀 595.3.4.清空回收站 595.3.5.重復(fù)RMAN備份4,5,6,7 595.3.6.導(dǎo)出元數(shù)據(jù) 595.3.7.導(dǎo)入前創(chuàng)建還原點(diǎn)(12.2可pdb閃回) 615.3.8.導(dǎo)入元數(shù)據(jù)到PDB 615.3.9.表空間讀寫 625.3.10.導(dǎo)入用戶元數(shù)據(jù) 625.3.11.public對(duì)象單獨(dú)導(dǎo)出導(dǎo)入 635.3.12.修改用戶默認(rèn)的表空間 635.3.13.刪除閃回點(diǎn) 63
XTTS操作手冊(cè)概述KnownIssuesforCrossPlatformTransportableTablespacesXTTS(DocID2311677.1)V4ReduceTransportableTablespaceDowntimeusingCrossPlatformIncrementalBackup(DocID2471245.1)11G-ReduceTransportableTablespaceDowntimeusingCrossPlatformIncrementalBackup(Note1389592.1)12C-ReduceTransportableTablespaceDowntimeusingCrossPlatformIncrementalBackup(Note2005729.1)‘’傳統(tǒng)的跨平臺(tái)傳輸表空間TraditionalCrossPlatformTransportableTablespacesThehigh-levelstepsinatypicalXTTSscenarioarethefollowing:1MaketablespacesinsourcedatabaseREADONLY2Transferdatafilestodestinationsystem3Convertdatafilestodestinationsystemendianformat4ExportmetadataofobjectsinthetablespacesfromsourcedatabaseusingDataPump5ImportmetadataofobjectsinthetablespacesintodestinationdatabaseusingDataPump6MaketablespacesindestinationdatabaseREADWRITE傳統(tǒng)的跨平臺(tái)傳輸表空間的停時(shí)時(shí)間和數(shù)據(jù)量成正比,如果數(shù)據(jù)量大,數(shù)據(jù)文件傳輸和轉(zhuǎn)換的時(shí)間會(huì)很長。具有大量元數(shù)據(jù)庫的數(shù)據(jù)從跨平臺(tái)增量備份中獲益有限;遷移時(shí)間由元數(shù)據(jù)操作決定,而不是數(shù)據(jù)文件和傳輸只有那些物理上位于被傳輸?shù)谋砜臻g中的數(shù)據(jù)庫對(duì)象才會(huì)被復(fù)制到目標(biāo)系統(tǒng)。跨平臺(tái)增量備份傳輸表空間Thehigh-levelstepsusingthecrossplatformincrementalbackupcapabilityarethefollowing:1.Preparephase(sourcedataremainsonline)1.1Transferdatafilestodestinationsystem1.2Convertdatafiles,ifnecessary,todestinationsystemendianformat2.RollForwardphase(sourcedataremainsonline-Repeatthisphaseasmanytimesasnecessarytocatchdestinationdatafilecopiesuptosourcedatabase)2.1Createincrementalbackuponsourcesystem2.2Transferincrementalbackuptodestinationsystem2.3Convertincrementalbackuptodestinationsystemendianformatandapplythebackuptothedestinationdatafilecopies3.Transportphase(sourcedataisREADONLY)3.1MaketablespacesinsourcedatabaseREADONLY3.2RepeattheRollForwardphaseonefinaltimeThisstepmakesdestinationdatafilecopiesconsistentwithsourcedatabase.TimeforthisstepissignificantlyshorterthantraditionalXTTSmethodwhendealingwithlargedatabecausetheincrementalbackupsizeissmaller.3.5ExportmetadataofobjectsinthetablespacesfromsourcedatabaseusingDataPump3.6ImportmetadataofobjectsinthetablespacesintodestinationdatabaseusingDataPump3.7MaketablespacesindestinationdatabaseREADWRITE其它對(duì)象傳輸,函數(shù),存儲(chǔ)過程,視圖,臨時(shí)表定義,PL/SQL對(duì)象?跨平臺(tái)增量備份支持腳本perties配置文件xttdriver.pl執(zhí)行XTTS跨平臺(tái)增量備份過程的主要步驟限制1必須遵循可傳輸表空間的限制和注意事項(xiàng)。/cd/E11882_01/server.112/e25494/tspaces.htm#i1007169/cd/E11882_01/server.112/e22490/dp_export.htm#i10075242不支持Windows版本3源數(shù)據(jù)庫必須是或更高版本4源數(shù)據(jù)庫的兼容參數(shù)必須設(shè)置為10.2.0或更高版本。5源數(shù)據(jù)庫的COMPATIBLE參數(shù)不能大于目標(biāo)數(shù)據(jù)庫的COMPATIBLE參數(shù)。6源數(shù)據(jù)庫必須處于ARCHIVELOG模式。7目標(biāo)數(shù)據(jù)庫必須運(yùn)行或更高版本。8目標(biāo)系統(tǒng)是Linux系統(tǒng)或者Unix系統(tǒng)9源的Oracle版本必須低于或等于目標(biāo)??梢宰鳛樯?jí)方法使用10RMAN的默認(rèn)設(shè)備類型應(yīng)配置為磁盤11源系統(tǒng)上的RMAN不能將設(shè)備類型磁盤配置為“壓縮”。如果是這樣,過程可能會(huì)返回:ORA-19994:跨平臺(tái)備份壓縮備份的不同端性。12要移動(dòng)的表空間集必須全部聯(lián)機(jī),并且不包含脫機(jī)數(shù)據(jù)文件。表空間必須是讀寫的。只讀的表空間可以用普通的XTTS方法移動(dòng)。不需要合并跨平臺(tái)增量備份來移動(dòng)始終為只讀的表空間。13不支持對(duì)備用數(shù)據(jù)庫或快照備用數(shù)據(jù)庫執(zhí)行此過程。14如果目標(biāo)數(shù)據(jù)庫版本為或更低版本,則需要在目標(biāo)系統(tǒng)上運(yùn)行實(shí)例的包含的單獨(dú)數(shù)據(jù)庫主目錄才能執(zhí)行增量備份轉(zhuǎn)換。15如果將ASM用于ConvertHome,則ASM必須位于上,否則將引發(fā)錯(cuò)誤ORA-15295(例如,ORA-15295:ASM實(shí)例軟件版本.0低于客戶端版本.0)遷移前準(zhǔn)備遷移檢查表配置類型源庫source目標(biāo)庫dest說明操作系統(tǒng)1313selectPLATFORM_ID,PLATFORM_NAMEfromv$database;
XTTS不支持Windows版本操作系統(tǒng)版本CentOS7.4OracleLinux6.10cat/etc/*-release
目標(biāo)系統(tǒng)是Linux系統(tǒng)或者Unix系統(tǒng)/etc/hosts檢查1dest
1source1dest
1source配置sourcedest主機(jī)名,可以使用主機(jī)名解析IP數(shù)據(jù)庫補(bǔ)丁版本.0.0opatchlspatches
select'opatch',commentsfromdba_registry_history;
源數(shù)據(jù)庫必須是或更高版本,目標(biāo)數(shù)據(jù)庫必須是或更高版本。
源的Oracle版本必須低于或等于目標(biāo)。
DFT方法建議安裝Patch19023822修復(fù)目標(biāo)端使用DBMS_FILE_TRANSFER.GET_FILE包獲取源端數(shù)據(jù)文件出現(xiàn)ORA-03106的情況。Patch22171097:MERGEREQUESTONTOPOFDATABASEPSU.6FORBUGS1753436519023822補(bǔ)丁opatch版本.25.25opatchversion兼容參數(shù)檢查.0.0showparametercompatible
源數(shù)據(jù)庫的兼容參數(shù)必須設(shè)置為10.2.0或更高版本。源數(shù)據(jù)庫的不能大于目標(biāo)數(shù)據(jù)庫的。歸檔模式檢查YESYESarchiveloglist;
源數(shù)據(jù)庫必須處于ARCHIVELOG模式。組件檢查通過通過selectcomp_namefromdba_registry;
對(duì)于不一樣的組件,需要有所標(biāo)記數(shù)據(jù)庫名稱orclorclORACLE_SID數(shù)據(jù)庫字符集AMERICAN_AMERICA.AL32UTF8AMERICAN_AMERICA.AL32UTF8select*fromnls_database_parameterswhereparameterlike'%CHARACTERSET%';國家字符集UTF-8UTF-8(NATIONALCHARACTER)影響NCHARNVARCHARNLOBNCLOB時(shí)區(qū)檢查+08:00+08:00selectsessiontimezone,dbtimezonefromdual;數(shù)據(jù)庫節(jié)點(diǎn)單實(shí)例RAC1節(jié)點(diǎn)DB_FILES參數(shù)302000showparameterdb_files
目標(biāo)端不能小于源端BCT檢查未開啟(通過)-在源端數(shù)據(jù)量較大,或者數(shù)據(jù)改變較大時(shí)啟用,需要在源庫安裝補(bǔ)丁Bug16850197,但是目前該補(bǔ)丁只在.8上有提供。經(jīng)過測試,其余版本沒有觸發(fā)bug。
注意:塊跟蹤設(shè)置的目錄大小,避免因塊跟蹤目錄滿而導(dǎo)致源數(shù)據(jù)庫hang。
注意:RAC需要放在共享存儲(chǔ)上,否則會(huì)導(dǎo)致DFSLOCKHANDLE,導(dǎo)致實(shí)例異常。select*fromv$BLOCK_CHANGE_TRACKING;ALTERDATABASEENABLEBLOCKCHANGETRACKINGUSINGFILE'/XXX/bct.trace';select*fromv$BLOCK_CHANGE_TRACKING;altersystemset"_bct_bitmaps_per_file"=100sid='*'遷移用戶GZGZ9COG創(chuàng)建用戶并授權(quán)(已創(chuàng)建)setline190pages900
selectusername,account_status,profile,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACEfromdba_userswhereACCOUNT_STATUSnotin('EXPIRED'||chr(38)||'LOCKED','LOCKED');遷移表空間GZ1遷移的表空間
在目標(biāo)數(shù)據(jù)庫不能存在withtas(selectOWNER,SEGMENT_TYPE,TABLESPACE_NAMEtbs_name,count(1)cnt,round(sum(BYTES/1024/1024),2)sizeMB
fromdba_segmentswhereOWNERin(selectusernamefromsys.t_user)
groupbyOWNER,TABLESPACE_NAME,SEGMENT_TYPE
)selectdistincttbs_namefromt表空間
自包含檢查通過-execdbms_tts.transport_set_check('GZ2,GZ1',TRUE,TRUE);
execdbms_tts.transport_set_check('GZ1',TRUE,TRUE);
select*fromtransport_set_violations;表空間
聯(lián)機(jī)檢查通過-selectdistinctstatusfromgv$datafile;
selectdistinctc.statusfile_status,d.STATUStbs_statusfromgv$datafilec,v$tablespacea,sys.t_tbsb,dba_tablespacesdwhere=b.tbs_nameandc.ts#=a.ts#andb.tbs_name=d.TABLESPACE_NAME;
要移動(dòng)的表空間集必須全部聯(lián)機(jī),并且不包含脫機(jī)數(shù)據(jù)文件。表空間必須是讀寫的。RMAN檢查DISKDISKRMAN的默認(rèn)設(shè)備類型應(yīng)配置為磁盤,源系統(tǒng)上不能將設(shè)備類型磁盤配置為“壓縮”。統(tǒng)計(jì)信息-提前關(guān)閉execDBMS_AUTO_TASK_ADMIN.DISABLE(client_name=>'autooptimizerstatscollection',operation=>NULL,window_name=>NULL);JOB參數(shù)-提前關(guān)閉altersystemsetjob_queue_processes=0sid='*';
防止job調(diào)度任務(wù),修改遷移后的數(shù)據(jù)。默認(rèn)1000回收站檢查關(guān)閉回收站-showparameterrecyclebin;
purgedba_recyclebin;
altersystemsetrecyclebin=offscope=spfilesid='*';
確認(rèn)生產(chǎn)庫的recyclebin功能是關(guān)閉,并手工清空回收站失效對(duì)象檢查無失效對(duì)象-檢查源庫失效對(duì)象,遷移前后對(duì)比Cluster對(duì)象無cluster對(duì)象-selectowner,CLUSTER_NAME,TABLESPACE_NAMEfromDBA_CLUSTERSwhereownerin(selectusernamefromsys.t_user);
源庫有CLUSTER對(duì)象需要安裝補(bǔ)丁17866999,or重建cluster對(duì)象IOT壓縮檢查無壓縮IOT-selectindex_name,table_namefromdba_indexeswherecompression='ENABLED'
andOWNERin(selectusernamefromsys.t_user);
selectowner,table_namefromdba_tableswhereiot_typeisnotnull
andOWNERin(selectusernamefromsys.t_user);
如果存在,目標(biāo)數(shù)據(jù)庫需要安裝Patch14835322,否則索引組織表的對(duì)象無法導(dǎo)入到目標(biāo)端。臨時(shí)目錄TMPDIR/home/oracle/xtt/home/oracle/xttecho"exportTMPDIR=/home/oracle/xtt">>~/.bash_profile;source~/.bash_profile
TMPDIR為支持腳本所在的路徑,使用shell運(yùn)行perl腳本xttdriver.pl,如果未設(shè)置TMPDIR,輸出文件和輸入文件都創(chuàng)建中/tmp中創(chuàng)建臨時(shí)區(qū)域backupformat=/u01/stage_sourcebackupondest=/u02/rman_incrbackupformat--源系統(tǒng)上增量備份目錄
backupondest--目錄系統(tǒng)增量轉(zhuǎn)換目錄
配置perties準(zhǔn)備階段-DFTcreateorreplacedirectorySRCas'/u11/app/oracle/oradata/ORCL/datafile';createdirectoryDSTas'+DATA/ORCL/datafile';select*fromdba_directories;
配置Directory和DBLINK準(zhǔn)備階段-DFT-創(chuàng)建DBLinkcreatepublicdatabaselinkttslink
connecttosystemidentifiedby"oracle"using
'(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=1)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)))';
select*fromdual@ttslink;準(zhǔn)備階段-RMANdfcopydir=/u01/stage_sourcestageondest=/u02/stage_destdfcopydir--源系統(tǒng)上RMAN-p階段生成文件目錄
stageondest--目標(biāo)系統(tǒng)目錄,MRAN手動(dòng)從源系統(tǒng)上傳輸文件
配置pertie暫存區(qū)安裝xttconvert源系統(tǒng)上安裝配置好之后copy到目錄系統(tǒng)unziprman_xttconvert_pertie配置
-RMANtablespaces=GZ1
platformid=13
dfcopydir=/u01/stage_source
backupformat=/u01/stage_source
stageondest=/u02/stage_dest
storageondest=+DATA/ORCL/DATAFILE
backupondest=/u02/rman_incrtablespaces=GZ1
platformid=13
srcdir=SRC
dstdir=DST
srclink=TTSLINK
dfcopydir=/u01/stage_source
backupformat=/u01/stage_source
stageondest=/u02/stage_dest
storageondest=+DATA/ORCL/DATAFILE
backupondest=/u02/rman_incrcatperties|grep-Ev"^$|^#"
scp-r/home/oracle/xttoracle@dest:/home/oracle源數(shù)據(jù)庫檢查2不支持Windows版本3源數(shù)據(jù)庫必須是或更高版本4源數(shù)據(jù)庫的兼容參數(shù)必須設(shè)置為10.2.0或更高版本。5源數(shù)據(jù)庫的COMPATIBLE參數(shù)不能大于目標(biāo)數(shù)據(jù)庫的COMPATIBLE參數(shù)。6源數(shù)據(jù)庫必須處于ARCHIVELOG模式。showparametercomparchiveloglist;數(shù)據(jù)庫目標(biāo)端補(bǔ)丁情況檢查。select'opatch',commentsfromdba_registry_history對(duì)比新舊環(huán)境用戶@show_create_profile@show_create_user對(duì)比role,對(duì)比新舊環(huán)境profile,在新環(huán)境當(dāng)中對(duì)比并創(chuàng)建用戶創(chuàng)建非默認(rèn)的temp表空間在目錄端創(chuàng)建用戶,并授權(quán)目標(biāo)數(shù)據(jù)庫表空間檢查如果存在空格或者換行符數(shù)據(jù)文件,需要將該數(shù)據(jù)文件rename,否則在傳輸過程中會(huì)報(bào)錯(cuò)終止。如果存在同名表空間,而且該表空間中的對(duì)象需要傳輸,建議將目標(biāo)端中的表空間rename,以避免沖突。檢查相同表空間下是否存在不同目錄下的同名數(shù)據(jù)文件。使用dbms_file_transfer方式進(jìn)行XTTS數(shù)據(jù)遷移,需要通過修改準(zhǔn)備階段的getfile.SQL和xttnewdatafile文件來調(diào)整數(shù)據(jù)文件生成的路徑。select
substr(file_name,-6,2)
from
dba_data_files
where
tablespace_name='TBS_NAME'
order
by
1;
如果目標(biāo)端有多個(gè)目錄,指定數(shù)據(jù)文件生成在不同的目錄,可以避免沖突。如果準(zhǔn)備階段使用rman方式進(jìn)行同步,則所有的數(shù)據(jù)文件會(huì)轉(zhuǎn)換為xtf結(jié)尾的文件,文件名會(huì)重新命名,所以不需要提前修改。對(duì)象的檢查對(duì)象的統(tǒng)計(jì),跟業(yè)務(wù)確認(rèn)需要傳輸哪一些數(shù)據(jù),哪一些表空間是遷移的對(duì)象創(chuàng)建模式用戶檢查1傳輸?shù)谋砜臻g只包含要傳輸?shù)挠脩舻膶?duì)象,傳輸?shù)谋砜臻g不包含其它用戶的對(duì)象檢查2目標(biāo)數(shù)據(jù)庫中存在表空間傳輸所需的模式用戶及表空間名稱。#確定用戶及表空間自包含--確定要遷移的用戶和表空間在目錄端創(chuàng)建用戶并授權(quán)setline190pages900selectusername,account_status,profile,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACEfromdba_userswhereACCOUNT_STATUSnotin('EXPIRED'||chr(38)||'LOCKED','LOCKED');--1.1查看當(dāng)前使用的用戶--createtablesys.t_userasselectusername,account_status,profile,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACEfromdba_userswhereACCOUNT_STATUSnotin('EXPIRED'||chr(38)||'LOCKED','LOCKED')andusernamenotin('SYS','SYSTEM');--1.2查看當(dāng)前用戶使用的默認(rèn)表空間(如果使用了SYSTEM,SYSAUX表空間,需要遷移到其它表空間)--目錄表空間--createtablesys.t_tbsaswithtas(selectOWNER,SEGMENT_TYPE,TABLESPACE_NAMEtbs_name,count(1)cnt,round(sum(BYTES/1024/1024),2)sizeMBfromdba_segmentswhereOWNERin(selectusernamefromsys.t_user)groupbyOWNER,TABLESPACE_NAME,SEGMENT_TYPE)selectdistincttbs_namefromt--wheretbs_namein('GZ1');select*fromsys.t_tbs;--修改USERS表空間為gz1表空間(如果使用到了USERS表空間,判斷是否需要修改)altertablespaceusersrenametogz2;--重新新建USERS表空間createtablespaceUSERSdatafilesize10Mautoextendonnext5Mmaxsize30G;--修改默認(rèn)用戶表空間以及用戶表空間(使用要遷移的表空間作為默認(rèn)表空間的其它用戶)alterdatabasedefaulttablespaceusers;--檢查是否有使用了要遷移的表空間用為默認(rèn)表空間的其它用戶(如果存在,需要調(diào)整為其它表空間)select'alteruser'||username||'defaulttablespaceUSERS;'alert_sqlfromdba_userswhereusernamenotin(selectusernamefromsys.t_user)andDEFAULT_TABLESPACEin(selecttbs_namefromsys.t_tbs);--2遷移在其它表空間的用戶的表,到遷移的表空間--判斷是否需要遷移表數(shù)據(jù)--2.1查看用戶使用了其它表空間(SYSTEM,SYSAUX)的對(duì)象明細(xì)–指定表空間selectOWNER,SEGMENT_NAME,SEGMENT_TYPE,TABLESPACE_NAME,round(BYTES/1024/1024,2)sizeMBfromdba_segmentswhereOWNERin(selectusernamefromsys.t_user)andTABLESPACE_NAMEnotin(selecttbs_namefromsys.t_tbs);--altertablegz9.t1movetablespacegz1;--2.11把處于SYSTEM,SYSAUS表空間的對(duì)象遷稱到用戶表空間select'alter'||SEGMENT_TYPE||''||OWNER||'.'||SEGMENT_NAME||''||decode(SEGMENT_TYPE,'TABLE','move','rebuild')||'tablespace&usrtbs;'alert_sqlfromdba_segmentswhereOWNERin(selectusernamefromsys.t_user)andTABLESPACE_NAMEnotin(selecttbs_namefromsys.t_tbs)andSEGMENT_TYPEin('TABLE','INDEX');#2.2查看LOB對(duì)象selectowner,TABLE_NAME,COLUMN_NAME,SEGMENT_NAME,TABLESPACE_NAME,INDEX_NAMEfromDBA_LOBSwhereOWNERin(selectusernamefromsys.t_user)andTABLESPACE_NAMEnotin(selecttbs_namefromsys.t_tbs);#2.21遷移(遷入)LOB對(duì)象select'altertable'||OWNER||'.'||TABLE_NAME||'movelob('||COLUMN_NAME||')storeas(tablespace&usrtbs);'alert_sqlfromDBA_LOBSwhereOWNERin(selectusernamefromsys.t_user)andTABLESPACE_NAMEnotin(selecttbs_namefromsys.t_tbs);#3.1查看其它用戶在使用了需要遷移的用戶表空間的其它用戶對(duì)象selectOWNER,TABLESPACE_NAME,SEGMENT_TYPE,count(1),round(sum(BYTES/1024/1024),2)sizeMBfromdba_segmentswhereOWNERnotin(selectusernamefromsys.t_user)andTABLESPACE_NAMEin(selectdistincttbs_namefromsys.t_tbs)groupbyOWNER,TABLESPACE_NAME,SEGMENT_TYPE;#3.11在用戶表空間的其它用戶對(duì)象明細(xì)selectOWNER,TABLESPACE_NAME,SEGMENT_TYPE,SEGMENT_NAME,round(BYTES/1024/1024,2)sizeMBfromdba_segmentswhereOWNERnotin(selectusernamefromsys.t_user)andTABLESPACE_NAMEin(selectdistincttbs_namefromsys.t_tbs);#3.12遷移(遷出)表空間select'alter'||SEGMENT_TYPE||''||OWNER||'.'||SEGMENT_NAME||''||decode(SEGMENT_TYPE,'TABLE','move','rebuild')||'tablespace&&othtbs;'alert_sqlfromdba_segmentswhereOWNERnotin(selectusernamefromsys.t_user)andTABLESPACE_NAMEin(selectdistincttbs_namefromsys.t_tbs)andSEGMENT_TYPEin('TABLE','INDEX');其它表空間的LOB對(duì)象遷移處理,#3.21查看LOB對(duì)象selectowner,TABLE_NAME,COLUMN_NAME,SEGMENT_NAME,TABLESPACE_NAME,INDEX_NAMEfromDBA_LOBSwhereOWNERnotin(selectusernamefromsys.t_user)andTABLESPACE_NAMEin(selectdistincttbs_namefromsys.t_tbs);#3.22遷移(遷出)LOB對(duì)象select'altertable'||OWNER||'.'||TABLE_NAME||'movelob('||COLUMN_NAME||')storeas(tablespace&&othtbs);'alert_sqlfromDBA_LOBSwhereOWNERnotin(selectusernamefromsys.t_user)andTABLESPACE_NAMEin(selectdistincttbs_namefromsys.t_tbs);--刪除臨時(shí)表droptablesys.t_userpurge;droptablesys.t_tbspurge分區(qū)LOB遷移處理--查看segment類型selectOWNER,SEGMENT_NAME,SEGMENT_TYPE,TABLESPACE_NAME,round(BYTES/1024/1024,2)sizeMBfromdba_segmentswhereOWNERin(selectusernamefromsys.t_user)andTABLESPACE_NAMEnotin(selecttbs_namefromsys.t_tbs);--LOB分區(qū)DBA_LOB_PARTITIONSselecttable_owner||'.'||table_nametable_name,column_name,lob_name,partition_name,lob_partition_name,tablespace_namefromDBA_LOB_PARTITIONSwheretable_ownerin(selectusernamefromsys.t_user)andTABLESPACE_NAMEnotin(selecttbs_namefromsys.t_tbs);--鎖定表locktablecog.test_rangeinexclusivemode;--普通的方式插入數(shù)據(jù)insertintocog.test_range2Aselect*fromcog.test_rangeB;--在并發(fā)INSERT的時(shí)候,數(shù)據(jù)是被使用APPEND方式插入到表中,如果需要常規(guī)方式插入,需要加上noappend提示.ALTERSESSIONENABLEPARALLELDML;ALTERSESSIONDISABLEPARALLELDML;insertinto/*+parallel(A,3)*/cog.test_range2ASELECT/*+parallel(B,3)*/*FROMcog.test_rangeB;--驗(yàn)證數(shù)據(jù)selectcount(1)fromcog.test_range2;--修改表名altertablecog.test_rangerenametotest_range3;altertablecog.test_range2renametotest_range;droptablecog.test_range3purge;altertable"COG".test_rangemovetablespacegz1;altertable"COG".test_rangemovePARTITION"P0"tablespacegz2;altertable"COG".test_rangemovepartition"P0"tablespacegz1lob(RANDOM_STRING2)storeasBASICFILE(tablespaceGZ1);altertable"COG".test_rangemovepartition"P0"LOB("RANDOM_STRING2")STOREASBASICFILE(TABLESPACE"GZ1");altertablecog.test_rangemodifydefaultattributestablespacegz1;--創(chuàng)建HASH分區(qū)表修改調(diào)表空間createtablecog.hash(idint,random_string1varchar2(100),msgclob)partitionbyhash(id)(partitionp1,partitionp2,partitionp3,partitionp4);--插入數(shù)據(jù)insertintocog.hashselectrownum,'123','abc'fromdualconnectbyrownum<=500;--查看分配置的空間undefinetable_namewithtas(selecta.*,rank()over(partitionbysegment_nameorderbyextent_iddesc)numfromdba_extentsawhereOWNER=upper('&&owner')andSEGMENT_NAMEin(selectSEGMENT_NAMEfromDBA_LOBSwhereOWNER=upper('&&owner')andTABLE_NAME=upper('&&table_name')unionselectindex_namefromdba_indexeswhereTABLE_OWNER=upper('&&owner')andtable_name=upper('&&table_name')unionselectupper('&&table_name')fromdual))selectOWNER,SEGMENT_NAME,PARTITION_NAME,SEGMENT_TYPE,TABLESPACE_NAME,EXTENT_ID,FILE_ID,BLOCK_ID,BYTES,BLOCKS,RELATIVE_FNOfromtwherenum<=50/--修改分區(qū)表(HASH)的表空間altertablecog.hashmovetablespacegz1;--分區(qū)表不能這樣直接修改定義的默認(rèn)表空間altertablecog.hashmodifydefaultattributestablespacegz1;--要這樣altertablecog.hashmovePARTITIONP4tablespacegz1;altertablecog.hashmovepartitionP1lob(msg)STOREASBASICFILE(tablespaceGZ1);--HASH分區(qū)不支持BASICFILEaltertablecog.hashmovepartitionP1lob(msg)STOREASSECUREFILE(tablespaceGZ1);--HASH分區(qū)可以使用SECUREFILEaltertablecog.hashmovepartitionP1lob(msg)storeas(tablespacegz1);altertablecog.hashmovepartitionP1tablespacegz1lob(msg)storeas(tablespacegz1);altertablecog.hashdeallocateunused;altertablecog.hashmodifypartitionp4lob(msg)(deallocateunusedkeep8K);altertablecog.hashmovepartitionP1lob(msg)storeas(tablespacegz1);檢查時(shí)區(qū)確保目標(biāo)數(shù)據(jù)庫和時(shí)間一致,--源端時(shí)區(qū),字符集的檢查selectsessiontimezone,dbtimezonefromdual;--會(huì)話時(shí)區(qū),世界時(shí)區(qū)selectdbtimezonefromdual;--數(shù)據(jù)庫時(shí)區(qū)--修改時(shí)區(qū)ALTERDATABASESETTIME_ZONE='+08:00';--修改好了之后需要重啟修改好后需要重啟pdb--檢查數(shù)據(jù)庫是否有這樣的字段類型TIMESTAMPWITHLOCALTIMEZONE--如果有需要轉(zhuǎn)換成timestamp--createtablegz1.tm1(idnumber(10),dtTIMESTAMPWITHLOCALTIMEZONE);--insertallintogz1.tm1values(3,sysdate)intogz1.tm1values(4,sysdate)select1fromdual;selectc.owner||'.'||c.table_name||'('||c.column_name||')-'||c.data_type||''colfromdba_tab_colsc,dba_objectsowherec.data_typelike'%WITHLOCALTIMEZONE'andc.owner=o.ownerandc.table_name=o.object_nameando.object_type='TABLE'orderbycol/--查看時(shí)區(qū)依賴的表(根據(jù)對(duì)象ID)select||'.'||||'.'||TSLTZcolumnfromsys.obj$o,sys.col$c,sys.user$uwherec.type#=231ando.obj#=c.obj#andu.user#=o.owner#;--查看時(shí)區(qū)依賴表結(jié)構(gòu)descgz1.tm1;--###處理時(shí)區(qū)依賴表也可以使用重建整個(gè)表CTAS,orcreateandinsertselectcreatetablegz1.tm1_tmp(idnumber(10)primarykey,dttimestamp);locktablegz1.tm1inexclusivemodenowait;--鎖整個(gè)表insertintogz1.tm1_tmpselectid,dtfromgz1.tm1;commit;altertablegz1.tm1dropcolumndt;altertablegz1.tm1addid2number(10);altertablegz1.tm1adddttimestamp;mergeintogz1.tm1gusinggz1.tm1_tmpton(g.id=t.id)WHENMATCHEDTHENupdatesetg.dt=t.dt;droptablegz1.tm1_tmppurge;#修改表中的ID順序(若無必要,不必修改)需要重啟數(shù)據(jù)庫#查看表對(duì)應(yīng)的idselectobject_idfromdba_objectswhereowner=upper('&&owner')andobject_name=upper('&&table_name');#查看表中各字段的順序:#填上剛剛查到的表idselectobj#,col#,namefromsys.col$whereobj#=&&obj_idorderbycol#;#修改順序undefinenew_numundefinecolumn_nameupdatesys.col$setcol#=&&new_numwherename=upper('&&column_name')andobj#=&&obj_id;updatesys.col$setcol#=col#+1wherename<>upper('&&column_name')andobj#=&&obj_idandcol#>=&&new_num;selectobj#,col#,namefromsys.col$whereobj#=&&obj_idorderbycol#;#值得注意的一點(diǎn)是,更新完字段順序后,若直接插入數(shù)據(jù),還是按舊的字段順序插入的,需要指定插入的字段或者重啟oracle。(需要根據(jù)情況驗(yàn)證)字符集的檢查若無必要,目標(biāo)端字符集和源數(shù)據(jù)庫字符集應(yīng)當(dāng)一致#為什么不用gbk的字符集:因?yàn)橛行h字gbk中沒有編碼,而utf8包容性最大--檢測當(dāng)前前字符序COLUMNPLATFORM_NAMEFORMATA36SELECT*FROMV$TRANSPORTABLE_PLATFORMORDERBYPLATFORM_NAME;selectPLATFORM_ID,PLATFORM_NAMEfromv$database;--檢測當(dāng)前字符集select*fromnls_database_parameterswhereparameterlike'%CHARACTERSET%';#客戶端字符集!env|grep-ilangNLS_LANG=AMERICAN_AMERICA.AL32UTF8NLS_LANG="SIMPLIFIEDCHINESE_CHINA.ZHS16GBK"LANG=en_US.UTF-8--操作系統(tǒng)--檢查字符集設(shè)置select*fromnls_database_parameterswhereparameterlike'%CHARACTERSET%';select*fromv$nls_parameterswhereparameterlike'%CHARACTERSET%';PARAMETERVALUENLS_CHARACTERSETAL32UTF8NLS_NCHAR_CHARACTERSETUTF8--server端字符集AMERICAN_AMERICA.AL32UTF8selectuserenv('language')fromdual;--client端字符集!echo$NLS_LANG--評(píng)估一下是否要做字符集更改將數(shù)據(jù)庫啟動(dòng)到RESTRICTED模式下做字符集更改startupmountforceALTERSYSTEMENABLERESTRICTEDSESSION;ALTERSYSTEMSETJOB_QUEUE_PROCESSES=0;ALTERSYSTEMSETAQ_TM_PROCESSES=0;alterdatabaseopen;ALTERDATABASECHARACTERSETZHS16GBK;--修改時(shí)可能會(huì)遇到以下錯(cuò)誤ORA-12712:newcharactersetmustbeasupersetofoldcharacterset--這時(shí)我們可以跳過超集的檢查做更改--修改字符集ZHS16GBKAL32UTF8ALTERDATABASEcharactersetINTERNAL_USEAL32UTF8;--修改國家字符集ALTERDATABASENATIONALCHARACTERSETINTERNAL_USEUTF8;shutdownimmediate--啟動(dòng)數(shù)據(jù)庫,修改參數(shù)為原來的值startupALTERSYSTEMSETJOB_QUEUE_PROCESSES=1000;ALTERSYSTEMSETAQ_TM_PROCESSES=4;select*fromv$nls_parameters;修改國家字符集-步驟:1.在SQL*PLUS中,以DBA登錄conn用戶名assysdba2.執(zhí)行轉(zhuǎn)換語句:altersystemsetcluster_database=FALSEscope=spfilesid='*';SHUTDOWNIMMEDIATE;STARTUPMOUNTEXCLUSIV;ALTERSYSTEMENABLERESTRICTEDSESSION;ALTERSYSTEMSETJOB_QUEUE_PROCESSES=0;ALTERSYSTEMSETAQ_TM_PROCESSES=0;ALTERDATABASEOPEN;ALTERDATABASENATIONALCHARACTERSETUTF8;altersystemsetcluster_database=TRUEscope=spfilesid='*';SHUTDOWNimmediate;startup;--修改國家字符集可能會(huì)報(bào)錯(cuò)ALTERDATABASENATIONALCHARACTERSETUTF8;ORA-12717:CannotALTERDATABASENATIONALCHARACTERSETwhenNCLOBdataexists--使用INTERNAL_USE的方法ALTERDATABASENATIONALCHARACTERSETINTERNAL_USEUTF8;檢查目標(biāo)端補(bǔ)丁情況opatchlspatchesselect'opatch',commentsfromdba_registry_history;如果準(zhǔn)備階段使用DBMS_FILE_TRANSFER方法,目標(biāo)端建議安裝的補(bǔ)丁如下:Patch19023822,修復(fù)目標(biāo)端使用DBMS_FILE_TRANSFER.GET_FILE包獲取源端數(shù)據(jù)文件出現(xiàn)ORA-03106的情況。Patch22171097:MERGEREQUESTONTOPOFDATABASEPSU.6FORBUGS1753436519023822如果準(zhǔn)備階段使用RMAN方法,目標(biāo)端沒有小補(bǔ)丁安裝需求。組件安裝情況檢查對(duì)于不一樣的組件,需要有所標(biāo)記selectcomp_namefromdba_registry;IOT檢查是否使用了KeyCompression的索引組織表selectindex_name,table_namefromdba_indexeswherecompression='ENABLED'andOWNERin(selectusernamefromsys.t_user);selectowner,table_namefromdba_tableswhereiot_typeisnotnullandOWNERin(selectusernamefromsys.t_user);如果存在,目標(biāo)數(shù)據(jù)庫需要安裝Patch14835322,否則索引組織表的對(duì)象無法導(dǎo)入到目標(biāo)端。目前該補(bǔ)丁只在版本下提供,針對(duì)其他版本,如果IOT表或者鍵值壓縮索引無法導(dǎo)入時(shí),建議在元數(shù)據(jù)導(dǎo)入完成后,將該類對(duì)象傳輸過去。$ORACLE_HOME/OPatch/opatchlsinv|grep14835322IfthesourcedatabasecontainsnestedIOTswithkeycompression,thenthefixfor
Bug14835322
mustbeinstalledinthedestinationdatabasehome(wherethetablespaceplugoperationoccurs).檢查源端是否有Cluster對(duì)象selectowner,CLUSTER_NAME,TABLESPACE_NAMEfromDBA_CLUSTERSwhereownerin(selectusernamefromsys.t_user);analyzecluster&cluster_namevalidatestructurecascadeBug17866999
-ORA-1499byAnalyzeClusterFollowingRMANConvert.ClusterInconsistencymayleadtoORA-600[6711]ORA-600[6722]Thisdocumentcanbereferredaswellforknownissues:Note17866999.8&Ifthesourcecontainsclusterobjects,thenrun"analyzecluster&cluster_namevalidatestructurecascade"afterXTTShasbeencompletedinthetargetdatabaseandifitreportsanORA-1499openthetracefileandreviewifithasentrieslike:kdcchk:indexpointstoblock0x01c034f2slot0x1chainlengthis256kdcchk:chaincountwrong0x01c034f2.1chainis1indexsays256lastentry0x01c034f2.1blockcount=1kdavls:kdcchkreturns3whencheckingclusterdba0x01c034a1objn90376Thentorepairthisinconsistencyeither:1.rebuildtheclusterindex.or2.Installfixbug17866999andrundbms_repair.repair_cluster_index_keycountIfafterrepairingtheinconsistencythe"analyzecluster&cluster_namevalidatestructurecascade"stillreportsissuesthenrecreatetheaffectedclusterwhichinvolvesrecreatingitstables.Notethatthefixofbug17866999isaworkaroundfixtorepairtheindexcluster;itwillnotavoidtheproblem.Oracledidnotfindavalidfixforthissituationsoitwillaffectanyrdbmsversions.如果修復(fù)Bug之后還是一直報(bào)錯(cuò),重建cluster對(duì)象檢查RMANRMAN的默認(rèn)設(shè)備類型應(yīng)配置為磁盤源系統(tǒng)上的RMAN不能將設(shè)備類型磁盤配置為“壓縮”。如果是這樣,過程可能會(huì)返回:ORA-19994:跨平臺(tái)備份壓縮備份的不同端性。開啟并行提高性能rmantarget/<<EOFshowall;exit;EOFCONFIGUREDEVICETYPEDISKPARALLELISM1BACKUPTYPETOBACKUPSET;CONFIGUREDEVICETYPEDISKPARALLELISM2BACKUPTYPETOBACKUPSET;配置壓縮會(huì)導(dǎo)致以上報(bào)錯(cuò),Iftherollforwardphase(xttdriver.pl-r)failswiththefollowingerrors,thenverifyRMANDEVICETYPEDISKis
not
configuredCOMPRESSED.EnteringRollForward
AfterapplySetDataFile
Done:applyDataFileTo
Done:RestoreSetPiece
DECLARE
*
ERRORatline1:
ORA-19624:operationfailed,retrypossible
ORA-19870:errorwhilerestoringbackuppiece
/dbfs_direct/FS1/xtts/incrementals/xtts_incr_backup
ORA-19608:/dbfs_direct/FS1/xtts/incrementals/xtts_incr_backupisnotabackup
piece
ORA-19837:invalidblocksize0inbackuppieceheader
ORA-06512:at"SYS.X$DBMS_BACKUP_RESTORE",line2338
ORA-06512:atline40檢查源端Compatible參數(shù)showparametercompatiblesource端的COMPATIBLE.RDBMS必須大于10.2.0,且不大于目標(biāo)端COMPATIBLE.RDBMS如果目標(biāo)端數(shù)據(jù)庫版本是或更低。那么需要在目標(biāo)端裝并創(chuàng)建實(shí)例,然后用來進(jìn)行備份集轉(zhuǎn)換。如果中轉(zhuǎn)實(shí)例使用ASM。那么ASM版本也必須是,否則報(bào)錯(cuò)ORA-15295。檢查表有沒有空段失效對(duì)象檢查。@chk_inivalid_object@?/rdbms/admin/utlrp基于XMLSchema的HMLType對(duì)象檢查。目標(biāo)端創(chuàng)建檢查用DBlink。檢查源數(shù)據(jù)庫的目標(biāo)庫具有重復(fù)名稱的表空間。目錄數(shù)據(jù)庫應(yīng)當(dāng)不存在源庫導(dǎo)出的表空間名稱檢查是否存在應(yīng)用用戶建在system、sysaux、users上的情況。SYS、SYSTEM用戶是否有對(duì)象存在于業(yè)務(wù)表空間如數(shù)據(jù)庫用戶
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024全新豬肉冷鏈物流配送服務(wù)合同下載2篇
- 2024商鋪轉(zhuǎn)讓及后續(xù)經(jīng)營維護(hù)三方合同示范文本
- 2024年新版房產(chǎn)預(yù)購合同指南版B版
- 2024年生物質(zhì)能研發(fā)合作合同3篇
- 2024年二零二四年度生物多樣性所有權(quán)轉(zhuǎn)移與保護(hù)合同3篇
- 2024版房產(chǎn)中介代理合同范本3篇
- 2024年度石材采購合同的交貨期限與地點(diǎn)合同3篇
- 2024年農(nóng)機(jī)買賣合同:農(nóng)業(yè)信息化解決方案3篇
- 《創(chuàng)客教育理念下的高中信息技術(shù)課程教學(xué)與實(shí)踐研究》
- 《基于物元可拓的裝配式混凝土住宅建造階段成本風(fēng)險(xiǎn)評(píng)價(jià)》
- 鐵路裝卸搬運(yùn)管理制度
- 隱蔽型無追索權(quán)國內(nèi)保理合同模板范本
- 精選四川省2023年普通高中學(xué)業(yè)水平考試物理學(xué)科實(shí)驗(yàn)操作考查試題
- 數(shù)字孿生技術(shù)在智慧工廠中的應(yīng)用解決方案
- 《卵巢腫瘤》ppt課件(PPT 101頁)
- 洪水預(yù)報(bào)講座20150628
- 部編版六年級(jí)上冊(cè)語文非連續(xù)性文本閱讀
- 企業(yè)現(xiàn)場6S改進(jìn)方案
- 咬合樁施工工藝
- 汽輪機(jī)課程設(shè)計(jì)
- CRTSⅠ型雙塊式無砟軌道施工技術(shù)
評(píng)論
0/150
提交評(píng)論