啟用最小補充日誌命令: ALTER database ADD Supplemental LOG DATA; 關閉最小補充日誌命令: ALTER DATABASE DROP Supplemental Log Data;
標識關鍵字段補充日誌:分為 主鍵、外鍵、唯一索引、全體字段 補充日誌 4種。 主鍵補充日誌:在update 命令的重做記錄中添加被修改行的主鍵字段的舊值,無論是否被修改,都記錄。 如果表沒有主鍵,則由長度最小的唯一索引字段代替,若連唯一索引也沒有,則記錄該行所有字段。
alter database add supplemental log data (Primary key) columns;
唯一索引補充日誌:唯一索引主要是為 復合索引(唯一)服務的。只有唯一索引的字段被 update 時,才會記錄該字段 被修改前的值。
alter database add supplemental log data (unique) columns;
外鍵補充日誌:同唯一索引補充日誌一樣,只有外鍵字段被 update 時,才會記錄被修改前的舊值,即也是為復合外鍵 服務的。
alter database add supplemental log data (foreign key ) columns;
全體字段補充日誌:顧名思義就所有字段的值不論是否被修改都記錄。會導致磁盤快速增長,LGWR進程繁忙。不建議使用。
alter database add supplemental log data (all) columns;
這 4 種補充日誌可以並行使用,效果累加。 表級補充日誌: 分為: 主鍵、唯一索引、外鍵、全體字段、用戶自定義字段 5種。 前 4 種 同數據庫級 標識關鍵字段補充日誌效果用法一樣。只不過是在特定表上啟用補充日誌
1、 alter table tb_name add supplemental log data (primary key) columns; 2、alter table tb_name add supplemental log data (unique) columns; 3、 alter table tb_name add supplemental log data (foreign key) columns; 4、 alter table tb_name add supplemental log data (all) columns; 5、 alter table tb_name add supplemental log group group_name (col01,col02,col05,col09) | always;
--自定義字段表級補充日誌 用戶可以任意指定哪些字段的舊值需要被補充日誌記錄。 有條件記錄式記載是指 無論 update 那個字段 這組中的其他字段都的記錄其舊值 無條件記錄式記載是指 有無條件記錄式記載 命令末尾 加 always 關鍵字,然後無論 update 該行那個字段,都記錄該組中 的字段的舊值。 表級補充日誌的情況 通過
dba_log_groups 和 dba_log_group_columns視圖查詢獲得
Tags: 日誌記錄 Oracle insert update 數據庫
文章來源: