新聞中心
隨著數(shù)據(jù)量的不斷增加,數(shù)據(jù)庫(kù)的性能成為了數(shù)據(jù)處理的關(guān)鍵點(diǎn)。而在許多開源數(shù)據(jù)庫(kù)中,h2是很好的一個(gè)選擇。但是,一旦數(shù)據(jù)庫(kù)出現(xiàn)崩潰,恢復(fù)數(shù)據(jù)就成為了一項(xiàng)長(zhǎng)時(shí)間的任務(wù)。因此,如何實(shí)現(xiàn)h2數(shù)據(jù)庫(kù)的快速崩潰恢復(fù),成為了很多數(shù)據(jù)庫(kù)管理員需要了解的問題。本文將會(huì)介紹如何通過幾個(gè)步驟來(lái)實(shí)現(xiàn)快速恢復(fù)h2數(shù)據(jù)庫(kù)。

成都創(chuàng)新互聯(lián)公司專業(yè)IDC數(shù)據(jù)服務(wù)器托管提供商,專業(yè)提供成都服務(wù)器托管,服務(wù)器租用,四川電信科技城機(jī)房,四川電信科技城機(jī)房,成都多線服務(wù)器托管等服務(wù)器托管服務(wù)。
1.備份數(shù)據(jù)
在我們開始學(xué)習(xí)如何進(jìn)行快速的h2數(shù)據(jù)庫(kù)恢復(fù)之前,備份數(shù)據(jù)是必不可少的一步。在備份數(shù)據(jù)之前,您需要停止所有h2相關(guān)的應(yīng)用程序,例如Java應(yīng)用程序或者H2 Console。備份數(shù)據(jù)后,您可以安全地執(zhí)行下一步操作。
2.使用h2 Database Management Console來(lái)修復(fù)數(shù)據(jù)庫(kù)
h2 Database Management Console是一個(gè)可以修復(fù)h2數(shù)據(jù)庫(kù)的工具。它可以自動(dòng)檢查數(shù)據(jù)庫(kù)中的錯(cuò)誤,并修復(fù)這些錯(cuò)誤。使用這個(gè)工具可以讓您快速地修復(fù)數(shù)據(jù)庫(kù),因?yàn)樗鼤?huì)自動(dòng)檢測(cè)并修復(fù)任何錯(cuò)誤。
您可以通過以下步驟來(lái)使用h2 Database Management Console修復(fù)h2數(shù)據(jù)庫(kù):
a.啟動(dòng)h2 Database Management Console,在命令行鍵入 java -cp org.h2.tools.Server,是h2.jar所在的位置。
b.連接到需要修復(fù)的數(shù)據(jù)庫(kù)。
c.執(zhí)行修復(fù)語(yǔ)句。在h2 Database Management Console中,您可以執(zhí)行如下命令來(lái)修復(fù)數(shù)據(jù)庫(kù):
CHECK REPR FAST
如果修復(fù)成功,h2 Database Management Console會(huì)顯示一條信息,說(shuō)明已成功修復(fù)。
3.使用h2 Database Recovery Tool
如果h2 Database Management Console修復(fù)失敗,那么您可以嘗試使用h2 Database Recovery Tool。這個(gè)工具會(huì)在h2數(shù)據(jù)庫(kù)出現(xiàn)問題的時(shí)候自動(dòng)備份數(shù)據(jù)庫(kù)。如果數(shù)據(jù)沒有被備份,那么工具也可以通過字節(jié)級(jí)別掃描磁盤來(lái)恢復(fù)數(shù)據(jù)。
使用h2 Database Recovery Tool可以讓您快速地恢復(fù)損壞的數(shù)據(jù)庫(kù)。您可以通過以下步驟來(lái)使用h2 Database Recovery Tool:
a.關(guān)閉所有h2應(yīng)用程序。
b.將工具的壓縮文件解壓縮到任何文件夾。
c.將損壞的數(shù)據(jù)庫(kù)拷貝到上一步所在的文件夾中。
d.打開命令行,并且輸入:
java -cp h2recovery.jar FileRecover [-compressed] [-trace] [-page]
其中是您的數(shù)據(jù)庫(kù)地址和名稱。例如:
java -cp h2recovery.jar FileRecover -page “D:/mydb” -text -dir “D:/recovered”
如果您的數(shù)據(jù)庫(kù)有密碼,那么您還需要添加密碼參數(shù):
java -cp h2recovery.jar FileRecover -page “D:/mydb” -pw “my_password” -text -dir “D:/recovered”
e.等待程序完成,并檢查恢復(fù)的數(shù)據(jù)庫(kù)。
相關(guān)問題拓展閱讀:
- 如何應(yīng)對(duì)SQL Server數(shù)據(jù)庫(kù)崩潰[1]
如何應(yīng)對(duì)SQL Server數(shù)據(jù)庫(kù)崩潰[1]
任何數(shù)據(jù)庫(kù)系統(tǒng)都無(wú)法避免崩潰的狀況 即使你使用了Clustered 雙機(jī)熱備等等 仍然無(wú)法完全根除系統(tǒng)中的單點(diǎn)故障 何況對(duì)于大部分用戶來(lái)說(shuō) 無(wú)法承受這樣昂貴的硬件投資 所以 在系統(tǒng)崩潰的時(shí)候 我們應(yīng)該如何恢復(fù)原有的寶貴數(shù)據(jù)就成為一個(gè)極其重要的問題了
在恢復(fù)的時(shí)候 最理想的情況就是你的數(shù)據(jù)文件和日志文件都完好無(wú)損了 這樣只需要sp_attach_db 把數(shù)據(jù)文件附加到新的數(shù)據(jù)庫(kù)上即可 或者在停機(jī)的時(shí)候把所有數(shù)據(jù)文件(一定要有master等)都copy到原有路徑下也行 不過一般不推薦這樣的做法 sp_attach_db比較好 雖然麻煩許多
但是呢 一前念般數(shù)據(jù)庫(kù)崩潰的時(shí)候系統(tǒng)是未必能有時(shí)間把未完成的事務(wù)和臟頁(yè)等寫入磁盤的 這樣的情況sp_attach_db就會(huì)失敗 那么 寄希望于DBA制定了一個(gè)良好的災(zāi)難恢復(fù)計(jì)劃吧 按照你的恢復(fù)計(jì)劃 還原最新的完全備份 增量備份或者事務(wù)日志備份 然后如果你的活動(dòng)事務(wù)日志還能知悔念讀得出來(lái)的話 恭喜你!你可以還原到崩潰前的狀態(tài)
一般的單位都是沒有專職的DBA的 如果沒有可用的備份 更可能是最近一次備份的時(shí)間過于久遠(yuǎn)而導(dǎo)致不可接受的數(shù)據(jù)損失 而且你的活動(dòng)事務(wù)日志也處于不可用的狀態(tài) 那就是最麻煩的情況了
不幸的很的是 一般數(shù)據(jù)庫(kù)崩潰都是由于存儲(chǔ)子系統(tǒng)引起的 而這樣的情況是幾乎不可能有可用的日志用于恢復(fù)的
那么就只好試一下這些方案了 當(dāng)然 是要求至少你的數(shù)據(jù)文件是存在的 要是數(shù)據(jù)文件 日志文件和備份都沒有了的話 別找我 你可以到樓頂上去唱 神啊 救救我吧
首先 你可以試一下sp_attach_single_file_db 試著恢復(fù)一下你的數(shù)據(jù)文件 雖然能恢復(fù)的可能性不大 不過假如這個(gè)數(shù)據(jù)庫(kù)剛好執(zhí)行了一個(gè)checkpoint的話 還是有可能成功的
如果你沒有好到有摸彩票的手氣 最重要的數(shù)據(jù)庫(kù)沒有像你期盼的那樣attach上去 不要?dú)怵H 還是有別的方案的
我們可以試著重新建立一個(gè)log 先把數(shù)據(jù)庫(kù)設(shè)置為emergency mode sysdatabases的status為 就表示數(shù)據(jù)庫(kù)處于此狀態(tài)
不過系統(tǒng)表是不能隨便改的 設(shè)置一下先
Use Master Go sp_configure allow updates reconfigure with override Go
然后 update sysdatabases set status = where name =
現(xiàn)在 祈求滿天神佛的保佑吧 重新建立一個(gè)log文件 成功的機(jī)會(huì)還是相當(dāng)大的 系統(tǒng)一般都會(huì)認(rèn)可你新建立的日志 如果沒有報(bào)告什么錯(cuò)誤 現(xiàn)在就可以松一口氣了
雖然數(shù)據(jù)是恢復(fù)了 可是別以為事情就算完成了 正在進(jìn)行的事務(wù)肯定是丟失了 原來(lái)的數(shù)據(jù)也可能受到一些損壞搭困
先把SQL Server 重新啟動(dòng)一下 然后檢查你的數(shù)據(jù)庫(kù)吧
lishixinzhi/Article/program/SQLServer/202311/22414
關(guān)于h2數(shù)據(jù)庫(kù) 崩潰恢復(fù)的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
本文題目:如何實(shí)現(xiàn)h2數(shù)據(jù)庫(kù)的快速崩潰恢復(fù)?(h2數(shù)據(jù)庫(kù)崩潰恢復(fù))
標(biāo)題路徑:http://fisionsoft.com.cn/article/djdjcij.html


咨詢
建站咨詢
