最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

DBA_2PC_PENDING介紹_Oracle應(yīng)用_腳本之家

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-09 09:30:38
文檔

DBA_2PC_PENDING介紹_Oracle應(yīng)用_腳本之家

DBA_2PC_PENDING介紹_Oracle應(yīng)用_腳本之家:DBA_2PC_PENDING 介紹 DBA_2PC_PENDING Oracle會(huì)自動(dòng)處理分布事務(wù),保證分布事務(wù)的一致性,所有站點(diǎn)全部提交或全部回滾。一般情況下,處理過程在很短的時(shí)間內(nèi)完成,根本無法察覺到。但是,如果在commit或rollback的時(shí)候,出現(xiàn)了連接中斷或某個(gè)數(shù)據(jù)庫站
推薦度:
導(dǎo)讀DBA_2PC_PENDING介紹_Oracle應(yīng)用_腳本之家:DBA_2PC_PENDING 介紹 DBA_2PC_PENDING Oracle會(huì)自動(dòng)處理分布事務(wù),保證分布事務(wù)的一致性,所有站點(diǎn)全部提交或全部回滾。一般情況下,處理過程在很短的時(shí)間內(nèi)完成,根本無法察覺到。但是,如果在commit或rollback的時(shí)候,出現(xiàn)了連接中斷或某個(gè)數(shù)據(jù)庫站

DBA_2PC_PENDING 介紹

DBA_2PC_PENDING
Oracle會(huì)自動(dòng)處理分布事務(wù),保證分布事務(wù)的一致性,所有站點(diǎn)全部提交或全部回滾。一般情況下,處理過程在很短的時(shí)間內(nèi)完成,根本無法察覺到。但是,如果在commit或rollback的時(shí)候,出現(xiàn)了連接中斷或某個(gè)數(shù)據(jù)庫站點(diǎn)CRASH的情況,則提交操作可能會(huì)無法繼續(xù),此時(shí)DBA_2PC_PENDING和DBA_2PC_NEIGHBORS中會(huì)包含尚未解決的分布事務(wù)。

對(duì)于絕大多數(shù)情況,當(dāng)恢復(fù)連接或CRASH的數(shù)據(jù)庫重新啟動(dòng)后,會(huì)自動(dòng)解決分布式事務(wù),不需要人工干預(yù)。只有分布事務(wù)鎖住的對(duì)象急需被訪問,鎖住的回滾段阻止了其他事務(wù)的使用,網(wǎng)絡(luò)故障或CRASH的數(shù)據(jù)庫的恢復(fù)需要很長的時(shí)間等情況出現(xiàn)時(shí),才使用人工操作的方式來維護(hù)分布式事務(wù)。


手工強(qiáng)制提交或回滾將失去二層提交的特性,Oracle無法繼續(xù)保證事務(wù)的一致性,事務(wù)的一致性應(yīng)由手工操作者保證。


對(duì)于分布式事務(wù),給事務(wù)命名是一個(gè)好的習(xí)慣。而且在事務(wù)執(zhí)行過程中,可以使用ALTER SESSION ADVISE COMMIT(ROLLBACK);語句,為手工解決分布事務(wù)提供參考信息。


當(dāng)手工解決分布事務(wù)出現(xiàn)了沖突,比如一個(gè)站點(diǎn)進(jìn)行了提交而另一個(gè)進(jìn)行了ROLLBACK,這時(shí),DBA_2PC_PENDING中的記錄不會(huì)清除,必須使用DBMS_TRANSACTION.PURGE_MIXED過程來清除。


如果CRASH的數(shù)據(jù)庫必須重建,或者無法再次啟動(dòng),則DBA_2PC_PENDING中的記錄也無法自動(dòng)清除,需要使用DBMS_TRANSACTION.PURGE_LOST_DB_ENTRY過程來清除。


Oracle9i中,當(dāng)使用上述兩個(gè)過程時(shí),必須處于UNDO_MANAGEMENT=MANUAL的模式,這個(gè)限制條件Oracle沒有寫到文檔中。一般使用9i都會(huì)使用AUTO模式(Oracle也是這樣推薦的),也就是說,想要清除DBA_2PC_PENDING中的信息,必須重起數(shù)據(jù)庫兩次,感覺這兩個(gè)過程的實(shí)際用處不大。

出現(xiàn)無法解決的分布式事務(wù)時(shí),可能會(huì)鎖住分布式事務(wù)中涉及的表,由于Oracle無法確定哪些數(shù)據(jù)是提交過的,哪些是沒有提交的,無法確定查詢操作可見的結(jié)果集,因此,即使是查詢操作也無法在該表上執(zhí)行。


使用ALTER SYSTEM DISABLE DISTRIBUTED RECOVERY,可以使Oracle不再自動(dòng)解決分布事務(wù),即使網(wǎng)絡(luò)恢復(fù)連接或者CRASH的數(shù)據(jù)庫重新啟動(dòng)。ALTER SYSTEM ENABLE DISTRIBUTED RECOVERY恢復(fù)自動(dòng)解決分布事務(wù)。


為了保證數(shù)據(jù)庫之間的SCN同步,可以采用兩種方法:在查詢數(shù)據(jù)前,執(zhí)行SELECT * FROM DUAL@REMOTE或者在執(zhí)行查詢前提交或回滾當(dāng)前事務(wù)。

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

DBA_2PC_PENDING介紹_Oracle應(yīng)用_腳本之家

DBA_2PC_PENDING介紹_Oracle應(yīng)用_腳本之家:DBA_2PC_PENDING 介紹 DBA_2PC_PENDING Oracle會(huì)自動(dòng)處理分布事務(wù),保證分布事務(wù)的一致性,所有站點(diǎn)全部提交或全部回滾。一般情況下,處理過程在很短的時(shí)間內(nèi)完成,根本無法察覺到。但是,如果在commit或rollback的時(shí)候,出現(xiàn)了連接中斷或某個(gè)數(shù)據(jù)庫站
推薦度:
標(biāo)簽: 介紹 腳本 之家
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top