欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

服務(wù)器斷電導(dǎo)致虛擬機(jī)數(shù)據(jù)丟失的恢復(fù)方法詳解

 更新時間:2018年01月19日 11:41:38   作者:宋國建  
這篇文章主要介紹了服務(wù)器斷電導(dǎo)致虛擬機(jī)數(shù)據(jù)丟失的恢復(fù)方法,較為詳細(xì)的分析了服務(wù)器斷電導(dǎo)致的數(shù)據(jù)丟失情況與相應(yīng)的故障處理技巧,需要的朋友可以參考下

本文實(shí)例講述了服務(wù)器斷電導(dǎo)致虛擬機(jī)數(shù)據(jù)丟失的恢復(fù)方法。分享給大家供大家參考,具體如下:

在服務(wù)器運(yùn)行過程中如果出現(xiàn)意外情況突然斷電很容易引起服務(wù)器故障,服務(wù)器中的硬件設(shè)備損壞可以修復(fù)或者購買,但是服務(wù)器中的數(shù)據(jù)一旦發(fā)生故障丟失,對于企業(yè)來說將是不可估量的損失。那么服務(wù)器數(shù)據(jù)一旦丟失就除了痛哭之外別無他法了嗎?不是的,下面我將引用一個真實(shí)案例為大家講解意外斷電導(dǎo)致服務(wù)器數(shù)據(jù)丟失的數(shù)據(jù)恢復(fù)方法和過程。文中若有歧義之處歡迎探討。

虛擬機(jī)數(shù)據(jù)丟失情況描述

因服務(wù)器突然斷電原因?qū)е耎en Server服務(wù)器中一臺VPS(即Xen Server虛擬機(jī))不可用,虛擬磁盤文件丟失。硬件環(huán)境是Dell 720服務(wù)器配戴一張H710P的RAID卡,由4塊希捷2T STAT硬盤組成的RAID 10,上層環(huán)境是Xen Server 6.2版本操作系統(tǒng),虛擬機(jī)是Windows Server 2003系統(tǒng),10G系統(tǒng)盤 + 5G數(shù)據(jù)盤兩個虛擬機(jī)磁盤,上層是Web服務(wù)器(ASP + SQL 2005的網(wǎng)站架構(gòu))。

分析故障原因

為確??蛻粼紨?shù)據(jù)的安全必須先將客戶的數(shù)據(jù)盤連接到恢復(fù)環(huán)境服務(wù)器上準(zhǔn)備對數(shù)據(jù)進(jìn)行鏡像備份,這一步中需要準(zhǔn)備超過客戶硬盤總?cè)萘康拇鎯臻g將數(shù)據(jù)以底層扇區(qū)的方式進(jìn)行鏡像備份。

在案例中分析底層數(shù)據(jù)發(fā)現(xiàn)Xen Server服務(wù)器中虛擬機(jī)的磁盤均以以LVM的結(jié)構(gòu)存放,即每個虛擬機(jī)的虛擬磁盤都是一個LV,并且虛擬磁盤的模式是精簡模式的。LVM的相關(guān)信息在Xen Server中都有記載,查看“/etc/lvm/backup/frombtye.com “下LVM的相關(guān)信息發(fā)現(xiàn)并沒有存在損壞的虛擬磁盤信息,因此可以斷定LVM的信息已經(jīng)被更新了。接著分析底層看能否找到未被更新的LVM信息,果不其然在底層發(fā)現(xiàn)了還未更新的LVM信息。如下圖:

根據(jù)未被更新的LVM信息找到了虛擬磁盤的數(shù)據(jù)區(qū)域,發(fā)現(xiàn)該區(qū)域的數(shù)據(jù)已被破壞。分析后發(fā)現(xiàn)造成虛擬機(jī)不可用的最終原因是因?yàn)樘摂M機(jī)的虛擬磁盤被破壞,從而導(dǎo)致虛擬機(jī)中的操作系統(tǒng)和數(shù)據(jù)丟失。而導(dǎo)致這種情況的發(fā)生很有可能是虛擬機(jī)遭遇網(wǎng)絡(luò)攻擊或hack入侵后留下惡意程序造成的。仔細(xì)核對這片區(qū)域后發(fā)現(xiàn),雖然該區(qū)域有很多數(shù)據(jù)被破壞了,但還是發(fā)現(xiàn)了很多數(shù)據(jù)庫的頁碎片。因此可以嘗試將許多數(shù)據(jù)庫的頁碎片拼成一個可用的數(shù)據(jù)庫。

制定數(shù)據(jù)恢復(fù)方案:

1、實(shí)施方案一

根據(jù)RAR壓縮包的結(jié)構(gòu)可以找到很多壓縮包的數(shù)據(jù)開始位置,而RAR壓縮包文件的第一個扇區(qū)中會記錄此RAR的文件名。因此根據(jù)從客戶那里得知備份數(shù)據(jù)庫的壓縮包文件名和目前找到的壓縮包位置的文件名相匹配,即可找到備份數(shù)據(jù)庫壓縮包的開始位置。找到壓縮包的位置后仔細(xì)分析這片區(qū)域的數(shù)據(jù),然后將此區(qū)域的數(shù)據(jù)恢復(fù)出來重命名為一個RAR格式的壓縮文件。然后嘗試解壓此壓縮包,發(fā)現(xiàn)解壓報錯。

報錯如下圖所示:

仔細(xì)分析恢復(fù)出來的壓縮包發(fā)現(xiàn)中有部分?jǐn)?shù)據(jù)被破壞了,因此解壓的時候報錯。嘗試使用RAR的修復(fù)工具看能否忽略錯誤,解壓部分?jǐn)?shù)據(jù)。結(jié)果修復(fù)完成之后解壓的數(shù)據(jù)庫只有網(wǎng)站的部分代碼,并沒有數(shù)據(jù)庫的備份文件。因此可以判斷數(shù)據(jù)的備份文件在RAR壓縮包中是損壞的。

如下是解壓出來的部分網(wǎng)站代碼。

2、實(shí)施方案二

由于方案一并沒有將數(shù)據(jù)庫恢復(fù)出來,因此采用方案二來恢復(fù)數(shù)據(jù)。根據(jù)SQL Server數(shù)據(jù)庫的結(jié)構(gòu)去底層分析數(shù)據(jù)庫的開始位置,在數(shù)據(jù)庫的結(jié)構(gòu)中,第9個頁會記錄本數(shù)據(jù)庫的數(shù)據(jù)庫名。因此在客戶那里獲取數(shù)據(jù)庫的名稱之后,再分析底層找到此數(shù)據(jù)庫的開始位置。因?yàn)樵跀?shù)據(jù)庫的每個頁中都會記錄數(shù)據(jù)庫頁編號以及文件號,所以可以根據(jù)這些特征編寫程序去底層掃描符合數(shù)據(jù)庫頁的數(shù)據(jù)。

然后將掃描出來的碎片按順序重組成一個完整MDF文件,再通過MDF校驗(yàn)程序檢測整個MDF文件是否完整。重建的MDF文件如下:

 

驗(yàn)證數(shù)據(jù)

檢測沒問題之后再搭建數(shù)據(jù)庫環(huán)境,將重組后的數(shù)據(jù)庫附加到搭建好的數(shù)據(jù)庫環(huán)境中。然后查詢相關(guān)表數(shù)據(jù)是否正常,查詢最新數(shù)據(jù)是否存在。截圖如下:

虛擬機(jī)數(shù)據(jù)恢復(fù)總結(jié):

由于數(shù)據(jù)庫需要結(jié)合網(wǎng)站代碼才能更好的驗(yàn)證數(shù)據(jù)庫的完整性。客戶從開發(fā)商里拿到了網(wǎng)站代碼搭建好了環(huán)境,然后將恢復(fù)好的數(shù)據(jù)庫發(fā)給用戶。經(jīng)用戶驗(yàn)證后,數(shù)據(jù)庫沒問題,通過拼數(shù)據(jù)庫碎片的方式成功將數(shù)據(jù)庫恢復(fù)完成,整個數(shù)據(jù)恢復(fù)成功。

希望本文所述對大家服務(wù)器維護(hù)有所幫助。

相關(guān)文章

  • Webpack部署本地服務(wù)器的方法

    Webpack部署本地服務(wù)器的方法

    webpack-dev-server?是一個用于開發(fā)環(huán)境的?Web?服務(wù)器,它集成了?Webpack,并提供了實(shí)時重新加載和熱替換等功能,以下是一個簡單的?webpack-dev-server?配置和使用示例,感興趣的朋友跟隨小編一起看看吧
    2024-03-03
  • 使用寶塔面板如何查看網(wǎng)站日志分析搜索引擎蜘蛛數(shù)據(jù)

    使用寶塔面板如何查看網(wǎng)站日志分析搜索引擎蜘蛛數(shù)據(jù)

    網(wǎng)站日志(確切的講應(yīng)該是服務(wù)器日志)是記錄WEB服務(wù)器接收處理請求以及運(yùn)行錯誤等各種原始信息的文件。通過查看網(wǎng)站日志分析數(shù)據(jù)我們可以獲得很有有用的數(shù)據(jù),例如蜘蛛訪問、是否被惡意訪問、網(wǎng)站訪客來源等等
    2023-04-04
  • Apache教程Hudi與Hive集成手冊

    Apache教程Hudi與Hive集成手冊

    這篇文章主要介紹了Apache教程Hudi與Hive集成手冊,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2022-03-03
  • Keepalived+HAProxy高可用集群K8S實(shí)現(xiàn)

    Keepalived+HAProxy高可用集群K8S實(shí)現(xiàn)

    這篇文章主要為大家介紹了Keepalived+HAProxy實(shí)現(xiàn)高可用集群K8S的構(gòu)建方式,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-03-03
  • HTTP與HTTP協(xié)作的Web服務(wù)器訪問流程圖解

    HTTP與HTTP協(xié)作的Web服務(wù)器訪問流程圖解

    記得以前剛接觸網(wǎng)站的時候,很奇怪一臺服務(wù)器上可以放很多個網(wǎng)站,不用的域名就可以訪問不同的目錄,今天看起來的理所當(dāng)然以前真是不可思議,今天剛好看到了這篇文章就為大家分享一下
    2018-10-10
  • 如何自己搭建簡單的Git服務(wù)器

    如何自己搭建簡單的Git服務(wù)器

    這篇文章主要介紹了如何自己搭建簡單的Git服務(wù)器。自己搭建 Git 服務(wù)器的原因,無非就是不方便訪問外網(wǎng),不愿意代碼放在別人的服務(wù)器,或者有一些定制化的需求。
    2022-12-12
  • 配置管理和服務(wù)發(fā)現(xiàn)之Confd和Consul使用場景詳解

    配置管理和服務(wù)發(fā)現(xiàn)之Confd和Consul使用場景詳解

    這篇文章主要為大家介紹了配置管理和服務(wù)發(fā)現(xiàn)之Confd和Consul使用場景詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • k8s查看各組件日志的方法圖文詳解

    k8s查看各組件日志的方法圖文詳解

    這篇文章主要給大家介紹了關(guān)于k8s查看各組件日志的方法,Kubernetes(簡稱K8s)已成為現(xiàn)代容器化應(yīng)用程序管理的主要平臺之一,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09
  • Hadoop SSH免密碼登錄以及失敗解決方案

    Hadoop SSH免密碼登錄以及失敗解決方案

    這篇文章主要介紹了Hadoop SSH免密碼登錄以及失敗解決方案的相關(guān)資料,需要的朋友可以參考下
    2016-12-12
  • rsync同步時出現(xiàn)rsync: failed to set times on “xxxx”: Operation not permitted

    rsync同步時出現(xiàn)rsync: failed to set times on “xxxx”: Operation no

    今天在同步數(shù)據(jù)的時候提示rsync: failed to set times on “xxxx”: Operation not permitted,一般來說要不是服務(wù)器時間不對或者權(quán)限沒有設(shè)置好
    2016-12-12

最新評論