DB2 BLOB欄位的not logged屬性

2021-05-06 11:13:48 字數 507 閱讀 2690

這個屬性的意思就是在更新和新增blob欄位值時,不會將修改和新增的blob的資料的值寫入歸檔日誌。歸檔日誌中只會記錄欄位被更新了,但更新的具體內容不記錄。

預設情況下,這個屬性是logged的。如果表已經新建,又想改為not logged的話,比較麻煩,需要將資料匯出,drop掉表,新建表,然後把資料導回去。

ibm這樣設計主要考慮到效能問題,因為大字段可能會有好幾g大小,在更新的資料檔案的同時,在把這些資料寫入歸檔日誌,一方面歸檔日誌會增長的很快,另一方面對io也是個巨大的壓力。所以,如果大字段很大的話,最好設定成not logged的。

解決這個問題的辦法:

方法一、修改屬性為logged,記錄內容。這個方法的前提是,評估對系統形成造成的影響,並合理的配置io。ibm專家的建議是,將資料,歸檔日誌,活動日誌放在不同的卷組上,使用不同的io

方法二、使用離線備份的方法,離線備份恢復時不需要前滾,自然也用不上歸檔日誌了。但這樣會把備份後的資料丟掉了,只能通過重做資料來做了。但這也比資料被置0好。看使用者是否能接受了。

命令列匯出匯入DB2BLOB資料

db2中匯出大資料字段 blob或clob 資訊時,使用工具 如 dbvis 匯出的文字資訊是亂碼,因此需要另想它法。在網上搜尋了一些方法,成功實現blob欄位資訊的遷移,現將具體方法記錄如下 第一步 進入db2命令列模式,連線到需要匯入資訊的表所有在的資料庫。命令 db2cmd db2 conne...

DB2的字段型別

db2的字段型別如下 字段型別 描述字段長度及其預設值 char size 用於儲存定長 size 位元組的字串資料。每行定長 不足部分補為空格 最大長度為254位元組,預設值為每行1位元組。varchar size 用於儲存變長的字串資料。其中最大位元組長度由 size 指定。每行長度可變,最大長...

db2的大字段CLOB,BLOB,DBCLOB

db2有三種型別的大字段 clob character large objects 適用於存放單位元組的字串,當我們要儲存的字元長度超過varchar的最大長度 32k 時,我們就要考慮使用clob了。dbclob double byte character large objects dbclob...