DB2 offline reorg的一點筆記
今天陪同新來的DB2 DBA上線,他問了我幾個問題,我總結了一下,雖然很簡單,但是貌似我多年之前也遇到過,疑惑過。
對資料庫的幾個千萬行級別大表加了列,做了offline reorg操作,幾分鐘以後,沒有做完,開始問我,怎麼看現在執行到哪裡了,多長時間能做完。
對於第一個問題,比較容易用db2pd看,每5秒看一次輸出
db2pd -d DBNAME -reorg -rep 5
這裡不得不提到的DB2的offline reorg分成幾步走,從上面的輸出可以看到 Build,IdxRecreat 這2步
實際可能有更多步,要看reorg用的命令和表有沒有cluster index,以下是詳細解釋
There are four phases in a classic or offline table reorganization:
(1) SORT: If an index is specified with the REORG TABLE command, or if a clustering index is defined on the table, the rows of the table are first sorted according to that index. If the INDEXSCAN option is specified, an index scan is used to sort the table, otherwise, a table scan sort is used. This phase only applies to a clustering REORG. Space reclaiming reorganizations begin at the build phase.
(2) BUILD: In this phase, a reorganized copy of the entire table is build, either in the table space that the table being reorganized resides, or in a temporary table space specified with the REORG command.
(3) REPLACE: In this phase, the original table object is replaced by either copying back from the temporary table space, or by pointing to the newly built object within the table space of the table being reorganized.
(4) RECREATE ALL INDEXES: All indexes defined on the table are recreated
估計一下執行時間的問題,最好是參考之前的REORG的時間
select START_TIME,END_TIME from sysibmadm.db_history where OPERATION='G' and OPERATIONTYPE='F' and TABNAME='XXXXXXXXX'
每次資料庫的變更,在組裡面討論的時候,都要估計一下變更所需要的時間,對於普通的SQL和DDL來說,時間消耗很小,如果涉及幾個大表的reorg & runstats操作,如果不事先做調查往往估計和實際有很大的出入,可能事情做完會被challenge。這就是吃力不討好。關鍵還是自己沒有做細緻。
Reorg之後,做runstats,繼續用db2pd 觀察 db2pd -d DBNAME -runstats
順便說一句,用了幾種資料庫,在做監控方面,db2pd是我最喜歡的,使用簡單,現在可以監控的東西非常多,非常不喜歡用SQL做監控的方式,在客戶現場,真心沒有空寫SQL,尤其是問題比較著急的時候。
DB2的新版本中加入了更多可以用db2pd監控的內容,希望db2pd能越來越考慮實際需要,增加更多的監控引數吧。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/725820/viewspace-2678992/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- db2 reorg,runstatsDB2
- DB2的REORG_學習(2)_表重組DB2
- DB2 老筆記系列(一)DB2筆記
- JSONP的一點筆記JSON筆記
- 一點git筆記Git筆記
- db2學習筆記DB2筆記
- 《無廢話XML》的一點筆記XML筆記
- Raft: 一點閱讀筆記Raft筆記
- 一點關於免疫系統的筆記筆記
- [zt] DB2日常維護——REORG TABLE命令優化資料庫效能DB2優化資料庫
- DB2學習筆記 - 表空間DB2筆記
- XDMA上位機相關:一點筆記筆記
- [每天進步一點點]mysql筆記整理(三):索引MySql筆記索引
- 筆記:React 中關於 key 的一點總結筆記React
- Oracle 普通Table進行ReorgOracle
- fabric orderer 排序節點的筆記排序筆記
- 人性的弱點讀書筆記筆記
- 知識盲點 隨筆筆記筆記
- mysql隱式提交事務transaction一點筆記MySql筆記
- Node基礎知識點--學習筆記(一)筆記
- 功能點分析(Function Point Analysis)學習筆記(一)Function筆記
- 程式設計師筆記(知識)管理的一點經驗程式設計師筆記
- 玩足彩的一點感受(r12筆記第80天)筆記
- ABAP 內表的一些知識點【學習筆記】筆記
- [每天進步一點點]mysql筆記整理(二):事務與鎖MySql筆記
- 生活點滴小筆記筆記
- numpy知識點筆記筆記
- 生物知識點筆記筆記
- 點分治學習筆記筆記
- 筆記一筆記
- SQLLDR的一個筆記SQL筆記
- JavaScript學習筆記 - 值的型別的一些知識點JavaScript筆記型別
- mysqldump的一點使用總結(r12筆記第81天)MySql筆記
- 駕考的一點總結(r12筆記第93天)筆記
- offline RL | D4RL:最常用的 offline 資料集之一
- tablespace offline 和datafile offline的區別
- 點分樹學習筆記筆記
- 【筆記/模板】割點和橋筆記