• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Prayer

            在一般中尋求卓越
            posts - 1256, comments - 190, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            解決DB2日志滿問題的一種方法

            Posted on 2009-08-07 12:20 Prayer 閱讀(768) 評論(0)  編輯 收藏 引用 所屬分類: DB2

            Document #: 1807545H25001

            Body:

            [標題]解決 DB2 日志滿問題的一種方法


            環(huán)境:
            產(chǎn)品:DB2 UDB
            平臺:跨平臺
            版本:8


            問題描述:

            DB2 使用的活動日志的最大空間是由下面公式:

            (logprimary + logsecond) * logfilsiz * 4096

            計算出的大小來決定的(logprimary,logsecond,logfilsiz是數(shù)據(jù)庫配置參數(shù))。若該空間已全部被分配,而應用仍試圖請求更多活動日志空間時,就會發(fā)生日志滿的情況,此時,用戶的更新、刪除或插入操作都會使 DB2DIAG.LOG 中寫入以下信息:

            SQL0964C 數(shù)據(jù)庫的事務日志已滿。

            DB2 活動日志滿通常是由于存在大量未提交事務的數(shù)據(jù),使得活動日志的空間不能及時釋放,使新的事務無法申請到可用日志空間,而最終報出 SQL0964C 的錯誤所致。為使應用程序成功運行,而不是被回滾,通常會考慮根據(jù)情況選擇增大以上公式中的某些數(shù)據(jù)庫參數(shù),以增大活動日志空間來解決這一問題。

            但還有另外一種原因,即在日志空間并未用盡的情況下,當某個占有最舊活動日志的應用長時間未作提交操作,阻止了日志的 LSN 的分配,造成日志空間無法使用,同樣會引發(fā)這一日志滿的報錯。對于這種情況,可以提交該交易或利用 FORCE 命令來終止此應用程序,以便釋放它所占用的日志空間,使 LSN 可以繼續(xù)分配,空閑的日志空間可用。這里就提供了由這一原因導致日志滿問題的解決方法。


            解答:

            首先檢查 DB2 診斷日志文件 db2diag.log,在其中查找類似如下信息:

            2003-01-16-02.53.54.935308 Instance:db2inst1 Node:016
            PID:144252(db2agntp (SAMPLE) 16) Appid:*.*
            data_protection sqlpgrsp Probe:50 Database:SAMPLE

            Log Full -- active log held by appl. handle 787273
            End this application by COMMIT, ROLLBACK or FORCE APPLICATION.
            :
            :

            由此,可以找到最早持有日志空間的應用程序,其句柄為 787273。如果使用 DB2 的快照工具,通過從快照的輸出中查找類似以下信息:

            Appl id holding the oldest transaction = 787273

            同樣可以找到這個應用程序的句柄。這時使用以下命令可以在無需斷開數(shù)據(jù)庫其它應用程序的連接的情況下強行終止該應用程序:

            db2 force application (787273)
            DB20000I FORCE APPLICATION 命令成功完成。
            DB21024I 該命令為異步的,可能不會立即生效。

            根據(jù)提示,由于該命令是異步操作,可再次使用:

            db2 list applications

            驗證應用是否已被真正停止,如果輸出中已沒有該應用,它所占有的日志空間會因應用程序被回滾而立即釋放,而 DB2 日志因此重新可用。


            Copyright and trademark information
            IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.
            狠狠色综合久久久久尤物| 久久久久亚洲AV无码专区桃色| 精品国产乱码久久久久久人妻| 日韩人妻无码一区二区三区久久99| 99久久香蕉国产线看观香| 69久久精品无码一区二区| 久久精品无码一区二区app| 中文字幕无码久久人妻| 91精品国产乱码久久久久久| 久久精品国产亚洲一区二区三区| 成人综合久久精品色婷婷 | 精品久久久久久中文字幕| 久久se精品一区二区影院| 亚洲AV无码1区2区久久| 亚洲а∨天堂久久精品| 国产精品久久久久无码av | 99久久99久久精品免费看蜜桃| 久久99精品久久久久久噜噜| 国产人久久人人人人爽| 久久99精品久久久大学生| 狠狠色综合网站久久久久久久| 久久久久亚洲av无码专区导航| 亚洲精品无码久久久| 91麻精品国产91久久久久| 国产精品一久久香蕉国产线看观看| 久久久国产打桩机| 一本色综合久久| 亚洲国产精品无码久久九九| 99久久婷婷国产综合精品草原| 久久成人国产精品| 久久国产精品一国产精品金尊| 一级女性全黄久久生活片免费| 亚洲精品tv久久久久| 国产精品99久久精品爆乳| 国产精品久久久久久久久| 国产精品美女久久久久网| 久久精品a亚洲国产v高清不卡| 久久人人妻人人爽人人爽| 亚洲国产精品久久久天堂| 午夜精品久久久久久久| 99久久中文字幕|