oracle 跨dblink 查詢遇到的一些常見問題、分析處理方法思路


         1、本地數據庫存儲過程中通過dblink 調用遠程數據庫存儲過程報 ora 20463 分布式事務處理已經開始錯誤:

              2種解決方法:

              a、被調用的遠程數據庫存儲過程去掉事務處理的commit、rollback,事務處理在本地數據庫中進行commit、rollback;

              b、被調用的遠程數據庫存儲過程采用自治事務,即在BEGIN END 語句塊前面增加 PRAGMA AUTONOMOUS_TRANSACTION;


        2、dataguard 備庫 查詢訪問dblink 報數據庫只讀錯誤:

           解決方法:

           在查詢語句之前聲明只讀事務,即增加 set transaction read only;


        3、通過dblink查詢出現性能問題:

            解決方法:

             當查詢包含分組、join、復雜子查詢時,cbo 優化模式往往不是很高效,可以考慮添加hint,如parallel,use_nl,use_hash,driving_site 等控制數據庫之間數據交互次數、傳輸結果集大小。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM