• <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++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            數據庫日志空間滿-- SQL0964C錯誤

            Posted on 2010-02-09 15:14 Prayer 閱讀(817) 評論(0)  編輯 收藏 引用 所屬分類: DB2

            15.2  數據庫常見問題總結

            15.2.1  數據庫日志空間滿-- SQL0964C錯誤

            數據庫運行時如果報SQL0964C的錯誤,那么一般和數據庫日志有關,先看圖15-3所示的案例。

             
            (點擊查看大圖)圖15-3  數據庫日志已滿
            DB2使用的活動日志的最大空間是由公式
            1. (logprimary + logsecond) * logfilsiz * 4096 

            計算出的大小來決定的(logprimary、logsecond、logfilsiz是數據庫配置參數)。在DB2中,一個長事務最多可以使用不超過256GB日志(DB2 V5是2GB,DB2 V7是32GB,DB2 V8是256GB)

            若該空間已全部被分配,而應用仍試圖請求更多活動日志空間時,就會發生日志滿的情況。此時,用戶的更新、刪除或插入操作都會使DB2DIAG.LOG中寫入以下信息:

            SQL0964C數據庫的事務日志已滿。

            SQL0964C錯誤表明數據庫日志已滿,DB2活動日志滿通常是由于存在大量未提交事務的數據,使得活動日志的空間不能及時釋放,使新的事務無法申請到可用日志空間,而最終報出SQL0964C的錯誤所致。要解決這些問題,您可以增加日志文件或日志個數。這種錯誤一般是批量插入、刪除或更新時報的錯誤。所以最好是能夠調整業務邏輯,分批次刪除、更新或插入。這樣做會降低日志報錯的概率。

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

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

            1. 2008-01-16-02.53.54.935308 Instance:db2inst1 Node:016  
            2. PID:144252(db2agntp (SAMPLE) 16) Appid:*.*  
            3. data_protection sqlpgrsp Probe:50 Database:SAMPLE  
            4. Log Full -- active log held by appl. handle 787273   
            5. End this application by COMMITROLLBACK or FORCE APPLICATION. 

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

            1. Appl id holding the oldest transaction = 787273 

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

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

            根據提示,由于該命令是異步操作,所以可再次使用:

            1. db2 list applications 

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

            国产精品成人久久久久久久| 久久人人添人人爽添人人片牛牛| 麻豆一区二区99久久久久| 午夜不卡久久精品无码免费| 精品国际久久久久999波多野| 久久99精品国产| 久久99这里只有精品国产| 熟妇人妻久久中文字幕| 国产激情久久久久影院| 久久久国产99久久国产一| 成人综合伊人五月婷久久| 国内精品久久久久久麻豆| 亚洲精品乱码久久久久久中文字幕| 久久91精品国产91久久小草| 欧美久久一区二区三区| 97久久精品人妻人人搡人人玩| 久久久久久亚洲精品不卡| 99精品久久久久中文字幕| 无码任你躁久久久久久老妇| 国内精品久久九九国产精品| 久久久久久国产精品无码下载 | 久久这里有精品视频| 久久午夜羞羞影院免费观看| 日日狠狠久久偷偷色综合0| 久久这里只精品国产99热| 久久人人爽爽爽人久久久| 久久精品人妻一区二区三区| 97久久精品人人做人人爽| 精品无码久久久久久午夜| 伊人久久大香线蕉亚洲五月天| 久久人搡人人玩人妻精品首页| 99久久精品免费看国产| 国产精品久久久久无码av| 久久久噜噜噜久久中文福利| 亚洲人成网亚洲欧洲无码久久| 久久久这里有精品| 日韩精品无码久久一区二区三| 久久精品国产精品亚洲艾草网美妙 | 久久久国产精品亚洲一区| 日韩精品久久久久久久电影蜜臀| 久久这里只有精品首页|