一.windows平台下:
1.開啟歸檔
1.1.logretain方式
win -》開始 -》所有程序 -》 IBM DB2 -》BD2copy -》一般管理工具 -》 控制中心
-》 右鍵庫名“TDB” -》 數據庫配置找到 “日志” -》 logarchmeth1 -》左鍵點擊“值” -》
-》更改數據庫配置參數-logarchmeth1 -》 選擇 “logretain” 確定(但這時,還沒生效)。
1.2.非logretain方式
同上,在更改數據庫配置參數-logarchmeth1 選擇 DISK,並添加上備份路徑即可,例如:F:\DB2\arch\
2.備份重啟
在控制中心界面 -》備份數據庫,做一次全備並重啟數據庫,就ok了。
(注:
備份數據庫 db2 backup database basename to d:\basename
還原數據庫 db2 restore database basename from d:\basename taken at 20190316083915 on d:\basename dbpath on d
)
3.結果驗證
db2 get db cfg |findstr -i log
使用上述命令,分別顯示如下:
3.1 logretain方式
logretain = RECOVERY
logarchmeth1 = LOGRETAIN
3.2 非logretain方式
logretain = OFF
logarchmeth1 = DISK:F:\DB2\arch\
即OK.
二.linux平台下:
1.歸檔方式選擇
1.1 logretain方式
db2 update db cfg DB_NAME using LOGRETAIN ON
1.2.非logretain方式
db2 update db cfg DB_NAME using LOGARCHMETH1 “DISK:/opt/DB2/arch"
2.重啟連接數據庫,如有連接掛起,做一次離線全備就ok了,否則在線備份即可。
db2stop force db2start db2 connect to sample (如連接掛起,做一次離線全備) db2 backup database sample > /home/db2inst1/backup/ db2 connect to sample
3.結果驗證
db2 get db cfg for sample |grep -i log
使用上述命令,分別顯示如下:
3.1 logretain方式
LOGRETAIN = RECOVERY
LOGARCHMETH1 = LOGRETAIN
3.2 非logretain方式,顯示
LOGRETAIN = RECOVERY
LOGARCHMETH1 = DISK:/opt/DB2/arch
即OK.
4. 重啟數據庫ok了。
三.開啟DB2的對象日志捕獲
如未打開,對應的表操作是不記錄日志的。語法:
alter table <table_name> data capture changes
四.手動歸檔
db2 connect reset
db2 archive log for db sample
