db2 前滾最小恢復時間和時間戳問題
前滾的最小恢復時間
該時間是系統目錄表對錶空間或其中表的最後一次更新操作的時間戳記,也就是任何rollforward命令要成功執行必須前滾的一個最小的時間點。這個最小的時間點可以確保表空間和日誌與系統目錄表中的資訊一致。
當對錶空間或表空間中的表執行DDL語句時,最小時間點將被更新。
考慮下面這個例子:
- 假設在時間 t1 上您做了一個完整資料庫備份,其中包括表空間 mytbls1。
- 在時間 t2 上,您在表空間 mytbls1 中建立了表 myTable。這將為表空間 mytbs1 到 t2 的恢復設定最小時間點。
- 在時間 t3 上,您決定使用 t1 時做的完整資料庫備份只恢復表空間 mytbls1。
- 恢復完成之後,表空間 mytbls1 將被置於 rollforward pending 狀態。如果您可以前滾到最小時間點之前的一個時間點上,那麼表空間 mytbls1 中將不包括表 myTable;然而,系統編目卻說這個表的確在 mytbls1 中。為了避免出現這樣的不一致,當您恢復一個表空間時,DB2 將強制使您至少前滾到最小時間點上。
使用兩種方法確定一個表空間的最小恢復時間:
l list tablespaces show detail
l get snapshot for tablespace on db_name.
如:
db2 => list tablespaces show detail
…
最小恢復時間 = 2012-11-29-07.00.45.000000
…
db2 => get snapshot for tablespaces on test
…
最小恢復時間 = 2012-11-29 07:00:45.000000
此外,SNAPSHOT_TBS_CFG表函式所返回的表的MIN_RECOVERY_TIME欄位中的值也為最小恢復時間。例如:
db2 => select substr(tablespace_name,1,15) as tablespace_name,min_recovery_time from table
(snapshot_tbs_cfg('TEST',-1))
TABLESPACE_NAME MIN_RECOVERY_TIME
--------------- --------------------------
SYSCATSPACE -
TEMPSPACE1 -
USERSPACE1 -
SYSTOOLSPACE -
TEST 2012-11-29-15.00.45.000000
SYSTOOLSTMPSPAC -
6 條記錄已選擇。
這種方法獲得的最小恢復時間與前兩種不同。前兩種方法返回的時間戳使用的時UTC(Coordinated Universal Time,也為GMT),即標準世界時,與“格林威治時間”是一樣的,使用此計時方式不用考慮不同時區的問題。而後SNAPSHOT_TBS_CFG表函式返回的時間戳使用的是本機所設時區的本地時間。兩種計時方式都可用於DB2前滾命令中的前滾時間戳引數,預設情況下使用的是UTC方式,如果要使用本地時間戳記,必須在時間戳後加上USING LOCAL TIME選項。
可通過專用暫存器CURRENT TIMEZONE返回本地時間與UTC時間之間的差:
db2 => values(CURRENT TIMEZONE)
1
--------
80000.
這表示它們之間的時差為+8小時,即UTC時間加上8小時即為本地時間
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25744374/viewspace-750311/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Unix 字串時間戳問題字串時間戳
- c++ 獲取當前時間周初凌晨時間戳(獲取當前時間週一凌晨時間戳)C++時間戳
- 時間型別和時間戳型別時間戳
- 32 位 PHP 時間戳問題PHP時間戳
- db2恢復到指定時間點DB2
- MySQL時間戳、時間MySql時間戳
- mysql時間操作(時間差和時間戳和時間字串的互轉)MySql時間戳字串
- java時間戳和PHP時間戳的轉換phptime()Java時間戳PHP
- 時間轉換成時間戳時間戳
- C 時間轉換時間戳時間戳
- C# 時間戳轉時間C#時間戳
- VNPY2 中凌晨0點時間戳的處理問題,和夜盤資料時間戳分析時間戳
- Perl中本地時間和UNIX時間戳間相互轉換時間戳
- javascript獲取當前的時間戳JavaScript時間戳
- javascript時間戳和時間格式的相互轉換JavaScript時間戳
- JavaScript 時間戳JavaScript時間戳
- kafka時間戳Kafka時間戳
- C 時間戳轉換成時間時間戳
- javascript時間戳與php返回的時間戳統一JavaScript時間戳PHP
- 如何用Java獲取當前時間戳?Java時間戳
- JS 時間戳轉換成幾天前JS時間戳
- Javascript獲取當前時間戳的方法JavaScript時間戳
- iOS時間格式化“剛剛、幾分鐘前、幾小時前”等,[包括時間戳&格式化後的時間]...iOS時間戳
- python時間戳和時間字串的各種轉換Python時間戳字串
- 時間日期和時間戳相互轉換程式碼例項時間戳
- Linux命令date 日期時間和Unix時間戳互轉Linux時間戳
- javascript將時間物件轉換為時間戳JavaScript物件時間戳
- Excel中時間戳轉換時間Excel時間戳
- 時間戳與時間字串的多時區轉換時間戳字串
- Python的時間、日期和時間戳的處理辦法Python時間戳
- Android 時間戳和日期之間的轉化Android時間戳
- js獲取某時間的當天0點時間戳 與某時間的當週週一0點時間戳JS時間戳
- JavaScript獲取時間戳JavaScript時間戳
- Python-時間戳Python時間戳
- spark sql在當前的時間戳下增加8個小時SparkSQL時間戳
- php將時間戳轉換為多少分鐘前PHP時間戳
- rman恢復到指定時間點
- android短視訊開發,Java程式碼獲取當前時間的時間戳AndroidJava時間戳