<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 89,  comments - 98,  trackbacks - 0

    二、DB2數(shù)據(jù)庫的恢復(fù)

    DB2數(shù)據(jù)庫提供了三種恢復(fù)類型:

    1、崩潰恢復(fù)(crash recovery):崩潰恢復(fù)是用來在失敗后立即進(jìn)行恢復(fù),把數(shù)據(jù)庫恢復(fù)到一個事務(wù)一致狀態(tài),此狀態(tài)的所有更改只有在執(zhí)行提交事務(wù)后才生效。崩潰恢復(fù)使用命令 RESTART 執(zhí)行。

    2、備份恢復(fù)(restore recovery):備份恢復(fù)可從上一次所作的備份中恢復(fù)數(shù)據(jù)庫的內(nèi)容。備份恢復(fù)使用 RESTORE 命令執(zhí)行。

    3、向前恢復(fù)(forward recovery):在一個數(shù)據(jù)庫從備份中恢復(fù)了以后,向前恢復(fù)可以重新執(zhí)行那些在備份后才更改了數(shù)據(jù)庫的操作。在這種情況下,數(shù)據(jù)庫可以恢復(fù)到備份和當(dāng)前時間之間的任何時間斷。向前恢復(fù)使用 ROLLFORWORD 命令執(zhí)行。

    崩潰恢復(fù)和備份恢復(fù)對任何數(shù)據(jù)庫都適用,而向前恢復(fù)只有在數(shù)據(jù)庫被指定可以使用此功能是才使用。表一顯示了此功能帶來的影響。

    表一 數(shù)據(jù)庫能否進(jìn)行向前恢復(fù)帶來的影響

    如果不允許進(jìn)行向前恢復(fù) 如果允許進(jìn)行向前恢復(fù)

    在發(fā)生失敗后,可以把數(shù)據(jù)庫恢復(fù)到失敗前與最后一次事務(wù)一致的狀態(tài)。

    同樣,也支持恢復(fù)到與最后一次事務(wù)一致的狀態(tài)。

    可以把數(shù)據(jù)庫恢復(fù)到任何有效的備份狀態(tài),但是不能重新執(zhí)行發(fā)生在備份之后的事務(wù)。

    可以把數(shù)據(jù)庫恢復(fù)到任何有效的備份狀態(tài),并且可以重新執(zhí)行從發(fā)生失敗到當(dāng)前為止提交的事務(wù)。

    只能在沒有任何應(yīng)用連接到數(shù)據(jù)庫時進(jìn)行備份(這稱為脫機備份)。

    可以在應(yīng)用連接到數(shù)據(jù)庫時和事務(wù)正在處理時進(jìn)行備份(這稱為聯(lián)機備份)。同樣支持脫機備份。

    每一個備份都必須包含整個數(shù)據(jù)庫的當(dāng)前狀態(tài)。

    一個備份可能包含整個數(shù)據(jù)庫的當(dāng)前狀態(tài),或者是一個或多個表空間。數(shù)據(jù)庫的表空間可以單獨地備份和恢復(fù)。

    可以通過把數(shù)據(jù)庫配置參數(shù) LOGRETAIN 或 USEREXIT 設(shè)置為 YES 來使向前恢復(fù)生效。日志會由于生成新的文件而不斷增加,并且它們是無限制的。在這種情況下,必須采取一些辦法把舊的日志文件保存到文檔中,以防止文件系統(tǒng)被日志占滿。

    1、RESTART 命令

    此命令是當(dāng)一些操作還在處理時發(fā)生斷電或軟件崩潰后要發(fā)出的第一個命令。它建立一個數(shù)據(jù)庫的連接,并使用日志來把數(shù)據(jù)庫恢復(fù)到事務(wù)一致狀態(tài)。所有在失敗發(fā)生前由提交操作所引起的數(shù)據(jù)庫更改都會生效。所有在失敗前被撤消的操作和失敗時正在處理的事務(wù)對數(shù)據(jù)庫進(jìn)行的更改都被撤消。

    下面是 RESTART 命令的例子:

    RESTART DATABASE mydb

    2、RESTORE 命令

    此命令使用存儲在備份中的內(nèi)容來恢復(fù)數(shù)據(jù)庫的內(nèi)容。RESTORE 命令可以創(chuàng)建一個新的數(shù)據(jù)庫。RESTORE 命令需要 SYSADM,SYSCTRLSYSMAINT特權(quán)。RESTORE 命令要使用的備份可能包含整個數(shù)據(jù)庫或一組表空間。恢復(fù)整個數(shù)據(jù)庫必須脫機進(jìn)行,恢復(fù)表空間可以聯(lián)機進(jìn)行,也就是在還有應(yīng)用連接到數(shù)據(jù)庫時進(jìn)行。RESTORE 命令語法為:

    RESTORE DB 目標(biāo)數(shù)據(jù)庫別名 [TABLESPACE 表空間名] [FROM 介質(zhì)名] [TAKEN AT 時間]

    下面是一些 RESTORE 命令的例子:

    (1)從一個特定目錄(/backup/mydb)中的備份來恢復(fù) mydb 數(shù)據(jù)庫。如果 mydb 不能夠進(jìn)行向前恢復(fù),數(shù)據(jù)庫將被恢復(fù)到備份時的狀態(tài),而且可以立即使用。如果能夠進(jìn)行向前恢復(fù),數(shù)據(jù)庫會被置為向前掛起(pending)狀態(tài),直到它被執(zhí)行向前恢復(fù)命令之后才能被使用。

    RESTORE DATABASE mydb FROM /backup/mydb

    (2)下面的命令是對數(shù)據(jù)庫 mydb 進(jìn)行恢復(fù),并且在外部指定不進(jìn)行向前恢復(fù),數(shù)據(jù)庫可以被立即使用。

    RESTORE DATABASE mydb FROM /backup/mydb WITHOUT ROLLING FORWARD

    (3)下面的例子是從一個指定的目錄(/backup/mydb)中來恢復(fù) mydb 數(shù)據(jù)庫的一個指定的表空間,此恢復(fù)要使用指定的日期和時間:

    RESTORE DATABASE mydb TABLESPACE ONLINE FROM /backup/mydb TAKEN AT 20000926201226

    3、ROLLFORWARD 命令

    ROLLFORWARD 命令是在執(zhí)行了一個 RESTORE 命令之后執(zhí)行的,以便對數(shù)據(jù)庫或它的表空間進(jìn)行向前恢復(fù)。ROLLFORWARD 命令需要SYSADM,SYSCTRLSYSMAINT 特權(quán),并且數(shù)據(jù)庫必須能夠進(jìn)行向前恢復(fù)。

    ROLLFORWARD 命令可以適用于整個數(shù)據(jù)庫或是一個或多個表空間,它們的狀態(tài)此時都是向前掛起(pending)的。如果向前恢復(fù)整個數(shù)據(jù)庫,此過程必須是脫機的,而且數(shù)據(jù)庫可以被恢復(fù)成備份時間和當(dāng)前時間之中的任何時間段。如果只向前恢復(fù)單獨的表空間,此過程既可以是聯(lián)機的也可以是脫機的,但是必須把表空間向前恢復(fù)到當(dāng)前時間后,再重新執(zhí)行所有引起更改的提交操作,這樣可保證被恢復(fù)的表空間和數(shù)據(jù)庫中的其它部分保持一致。ROLLFORWARD 命令語法為:

    ROLLFORWARD DATABASE 數(shù)據(jù)庫名 [TO {時間,END OF LOGS}][TABLESPACE {ONLINE,表空間名}]

    下面是一些 ROLLFORWARD 命令的例子:

    (1)此例子使 mydb 數(shù)據(jù)庫恢復(fù)到當(dāng)前時刻。字句 AND STOP 是讓數(shù)據(jù)庫不被置為 ROLLFORWARD PENDING 狀態(tài),并且可以被存取:

    ROLLFORWARD DATABASE mydb TO END OF LOGS AND STOP

    (2)下面的例子向前恢復(fù) mydb 數(shù)據(jù)庫,并重新執(zhí)行在指定日期和時間之前提交的所有事務(wù):

    ROLLFORWARD DATABASE mydb TO 2000-09-26-10.3059 AND STOP

    (3)下面的例子只把數(shù)據(jù)庫 mydb 中的某一表空間向前恢復(fù)。此命令是在執(zhí)行了一次表空間級別的恢復(fù)后發(fā)出的,它只適用于被恢復(fù)的表空間。此命令指出向前恢復(fù)是聯(lián)機進(jìn)行的,并且要進(jìn)行到當(dāng)前時間(日志末尾):

    ROLLFORWARD DATABASE mydb TO END OF LOGS AND STOP TABLESPACE ONLINE

    注:如果數(shù)據(jù)庫中有一些列是 LOB 數(shù)據(jù)類型的,并且它們被創(chuàng)建帶有 NOT LOGGED 選項,那么對這些列進(jìn)行的更新操作就沒有被記錄到日志中,向前恢復(fù)就不會對這些列進(jìn)行操作。如果在向前恢復(fù)過程中,遇到了沒有日志的列,它們的值會被置為十六進(jìn)制的0。

    posted on 2006-09-14 09:40 水煮三國 閱讀(250) 評論(0)  編輯  收藏 所屬分類: Database
    <2025年7月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(4)

    隨筆分類(85)

    隨筆檔案(89)

    文章分類(14)

    文章檔案(42)

    收藏夾(37)

    java

    oracle

    Sybase

    搜索

    •  

    積分與排名

    • 積分 - 211640
    • 排名 - 266

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久久久亚洲Av无码专| 亚洲av日韩av无码av| 久久这里只精品99re免费| 久久精品亚洲中文字幕无码麻豆| 日本亚洲免费无线码| 激情吃奶吻胸免费视频xxxx| 亚洲中文字幕在线观看| 在线看片免费人成视久网| 日韩成人精品日本亚洲| 国产亚洲人成网站在线观看不卡| 在线观看无码AV网站永久免费| 无套内射无矿码免费看黄| 亚洲色av性色在线观无码| 无码欧精品亚洲日韩一区夜夜嗨| 无码国产精品一区二区免费16| 亚洲AV无码AV日韩AV网站| 亚洲视频在线观看一区| 免费人成年激情视频在线观看| 未满十八18禁止免费无码网站| 日韩成人精品日本亚洲| 亚洲欧洲自拍拍偷综合| 久久影视国产亚洲| 免费高清在线爱做视频| 99re6在线精品视频免费播放 | 亚洲日本一区二区一本一道 | 国内免费高清在线观看| a毛片全部免费播放| 亚洲成a人片在线不卡一二三区| 亚洲国产精品自在在线观看| 国产三级免费观看| 伊人免费在线观看高清版| 亚洲精品成人区在线观看| 无码精品人妻一区二区三区免费看| 国产精品亚洲综合久久| 亚洲av区一区二区三| 日本免费高清视频| 亚洲JLZZJLZZ少妇| 亚洲爆乳精品无码一区二区三区 | 免费激情视频网站| 成全在线观看免费观看大全| 亚洲人成网站色在线观看|