本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,尤其涉及一種備份方法及裝置。
背景技術(shù):
為了能夠在文件、數(shù)據(jù)丟失或損壞的情況下,保護(hù)數(shù)據(jù)免受意外的損失,通常利用備份的方法對文件、系統(tǒng)等數(shù)據(jù)進(jìn)行復(fù)制來實(shí)現(xiàn)數(shù)據(jù)保護(hù)。
現(xiàn)有的備份方法包括兩種,一種是冷備份,即離線備份,是指在關(guān)閉系統(tǒng)并且系統(tǒng)不能更新的狀況下進(jìn)行的數(shù)據(jù)備份;另一種是熱備份,是指系統(tǒng)處于正常運(yùn)轉(zhuǎn)狀態(tài)并不斷進(jìn)行數(shù)據(jù)讀寫操作的狀況下進(jìn)行的數(shù)據(jù)備份。
然而,現(xiàn)有的備份方法存在如下缺點(diǎn):
1、冷備份由于需要關(guān)閉系統(tǒng),會(huì)導(dǎo)致系統(tǒng)數(shù)據(jù)業(yè)務(wù)的中斷,降低了系統(tǒng)運(yùn)行的實(shí)時(shí)性。
2、熱備份由于備份過程中文件系統(tǒng)仍然在進(jìn)行讀寫操作并產(chǎn)生相應(yīng)的讀寫數(shù)據(jù),這些數(shù)據(jù)不但容易在備份過程中受損或丟失,還會(huì)導(dǎo)致備份出的數(shù)據(jù)信息與原數(shù)據(jù)信息的不一致。
技術(shù)實(shí)現(xiàn)要素:
為解決上述技術(shù)問題,本發(fā)明實(shí)施例期望提供一種備份方法,能夠滿足在開機(jī)的狀態(tài)下實(shí)現(xiàn)備份,且備份出的數(shù)據(jù)信息與原數(shù)據(jù)信息滿足一致性。
本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
第一方面,本發(fā)明實(shí)施例提供一種備份方法,包括:獲取備份命令,備份命令用于指示將正在運(yùn)行的第一文件進(jìn)行備份;根據(jù)備份命令,停止對第一文件進(jìn)行操作;當(dāng)完成對第一文件的停止操作時(shí),開始對第一文件對應(yīng)的數(shù)據(jù)進(jìn)行備份;當(dāng)完成對第一文件對應(yīng)的數(shù)據(jù)備份時(shí),恢復(fù)第一文件的運(yùn)行,以繼續(xù) 進(jìn)行對第一文件的操作。
進(jìn)一步地,停止對第一文件進(jìn)行操作,包括:停止對第一文件進(jìn)行輸入輸出操作。
進(jìn)一步地,恢復(fù)第一文件的運(yùn)行,包括:恢復(fù)對第一文件的輸入輸出操作。
進(jìn)一步地,在獲取備份命令之前,還包括:建立數(shù)據(jù)交換通路,數(shù)據(jù)交換通路用于傳輸備份命令。
進(jìn)一步地,獲取備份命令具體包括:通過數(shù)據(jù)交換通路獲取備份命令。
第二方面,本發(fā)明實(shí)施例提供一種備份裝置,包括:獲取單元、停止單元、備份單元和恢復(fù)單元,其中:獲取單元,用于獲取備份命令,備份命令用于指示將正在運(yùn)行的第一文件進(jìn)行備份;停止單元,用于根據(jù)獲取單元獲取的備份命令,停止對第一文件進(jìn)行操作;備份單元,用于當(dāng)停止單元完成對第一文件的停止操作時(shí),開始對第一文件對應(yīng)的數(shù)據(jù)進(jìn)行備份;恢復(fù)單元,用于當(dāng)備份單元完成對第一文件對應(yīng)的數(shù)據(jù)備份時(shí),恢復(fù)第一文件的運(yùn)行,以繼續(xù)進(jìn)行對第一文件的操作。
進(jìn)一步地,停止單元,具體用于:根據(jù)獲取單元獲取的備份命令,停止對第一文件進(jìn)行輸入輸出操作。
進(jìn)一步地,恢復(fù)單元,具體用于:當(dāng)備份單元完成對第一文件對應(yīng)的數(shù)據(jù)備份時(shí),恢復(fù)對第一文件的輸入輸出操作。
進(jìn)一步地,裝置還包括建立單元,用于在獲取單元獲取備份命令之前,建立數(shù)據(jù)交換通路,數(shù)據(jù)交換通路用于傳輸備份命令。
進(jìn)一步地,獲取單元,具體用于:通過建立單元建立的數(shù)據(jù)交換通路獲取備份命令。
本發(fā)明實(shí)施例提供了一種備份方法及裝置,通過獲取備份命令,備份命令用于指示將正在運(yùn)行的第一文件進(jìn)行備份;根據(jù)備份命令,停止對第一文件進(jìn)行操作;當(dāng)完成對第一文件的停止操作時(shí),開始對第一文件對應(yīng)的數(shù)據(jù)進(jìn)行備份;當(dāng)完成對第一文件對應(yīng)的數(shù)據(jù)備份時(shí),恢復(fù)第一文件的運(yùn)行,以繼續(xù)進(jìn)行對第一文件的操作。采用上述技術(shù)實(shí)現(xiàn)方案,滿足了虛擬機(jī)在開機(jī)的狀態(tài)下實(shí) 現(xiàn)備份,保障了備份出的數(shù)據(jù)信息與原數(shù)據(jù)信息的一致性,提高了系統(tǒng)備份的安全性和可靠性。
附圖說明
圖1為本發(fā)明實(shí)施例提供的一種備份方法的流程示意圖一;
圖2為本發(fā)明實(shí)施例提供的一種備份方法的流程示意圖二;
圖3為本發(fā)明實(shí)施例提供的一種備份方法的流程示意圖三;
圖4為本發(fā)明實(shí)施例提供的一種備份裝置的結(jié)構(gòu)示意圖一;
圖5為本發(fā)明實(shí)施例提供的一種備份裝置的結(jié)構(gòu)示意圖二。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述。
本發(fā)明實(shí)施例提供的一種備份方法應(yīng)用在備份裝置上,其中,備份裝置安裝在具有文件系統(tǒng)、應(yīng)用程序、數(shù)據(jù)庫等數(shù)據(jù)的終端上,備份方法用于在終端處于開機(jī)狀態(tài)下對終端上正在運(yùn)行的部分?jǐn)?shù)據(jù)進(jìn)行備份。
實(shí)施例一
圖1為本發(fā)明實(shí)施例提供的一種備份方法的流程示意圖一,該方法包括:
步驟101:獲取備份命令,備份命令用于指示將正在運(yùn)行的第一文件進(jìn)行備份;
其中,第一文件,為終端上正在運(yùn)行的部分文件系統(tǒng)或應(yīng)用程序。例如,第一文件可以是終端上正在運(yùn)行的虛擬機(jī)的部分或全部文件??梢钥闯觯趯φ谶\(yùn)行的第一文件進(jìn)行操作時(shí),例如對第一文件對應(yīng)的數(shù)據(jù)進(jìn)行備份時(shí),不會(huì)影響終端上正在運(yùn)行的除第一文件以外的其他文件的運(yùn)行。也就是說,本發(fā)明實(shí)施例提供的備份方法,是在系統(tǒng)處于開機(jī)狀態(tài)下進(jìn)行的數(shù)據(jù)備份,即本發(fā)明實(shí)施例提供的備份方法是一種熱備份方法。
示例性地,圖2為本發(fā)明實(shí)施例提供的一種備份方法的流程示意圖二,在 獲取備份命令之前,該方法包括步驟100。具體為:
步驟100:建立數(shù)據(jù)交換通路,數(shù)據(jù)交換通路用于傳輸備份命令。
舉例來說,若正在運(yùn)行的第一文件為虛擬機(jī)上的文件,那么可以通過guest-agent組件來建立數(shù)據(jù)交換通路。其中,guest-agent是一個(gè)運(yùn)行在虛擬機(jī)內(nèi)部的應(yīng)用程序,其目的是實(shí)現(xiàn)宿主機(jī)和虛擬機(jī)之間的交互通信。具體地,guest-agent組件可以在虛擬機(jī)中模擬一個(gè)串口設(shè)備,并在宿主機(jī)中提供一個(gè)套接字socket接口,利用虛擬機(jī)中的串口設(shè)備和宿主機(jī)中的socket接口來實(shí)現(xiàn)宿主機(jī)和虛擬機(jī)之間的數(shù)據(jù)交換通路。
優(yōu)選地,獲取備份命令具體包括:通過數(shù)據(jù)交換通路獲取備份命令。
步驟102:根據(jù)備份命令,停止對第一文件進(jìn)行操作;
停止對第一文件進(jìn)行操作,包括停止對第一文件進(jìn)行數(shù)據(jù)讀寫、存取、分類、歸并和排序等操作。也就是說,對第一文件進(jìn)行凍結(jié),使得與第一文件對應(yīng)的數(shù)據(jù)不再產(chǎn)生改變,從而保障了備份出的數(shù)據(jù)信息與原數(shù)據(jù)信息的一致性。
在實(shí)際應(yīng)用中,可以利用guest-agent停止對第一文件進(jìn)行操作,即利用guest-agent實(shí)現(xiàn)對第一文件的凍結(jié)。需要說明的是,停止對第一文件進(jìn)行操作的實(shí)現(xiàn)方式還包括其他方式,本發(fā)明實(shí)施例對此不做具體的限定。
示例性地,停止對第一文件進(jìn)行操作,包括:停止對第一文件進(jìn)行輸入輸出操作。
步驟103:當(dāng)完成對第一文件的停止操作時(shí),開始對第一文件對應(yīng)的數(shù)據(jù)進(jìn)行備份;
步驟104:當(dāng)完成對第一文件對應(yīng)的數(shù)據(jù)備份時(shí),恢復(fù)第一文件的運(yùn)行,以繼續(xù)進(jìn)行對第一文件的操作。
在完成對第一文件對應(yīng)的數(shù)據(jù)備份時(shí),通過恢復(fù)第一文件的運(yùn)行,即對第一文件進(jìn)行解凍,從而實(shí)現(xiàn)在開機(jī)的狀態(tài)下對第一文件對應(yīng)的數(shù)據(jù)進(jìn)行備份。
在實(shí)際應(yīng)用中,可以利用guest-agent恢復(fù)第一文件的運(yùn)行,即利用guest-agent實(shí)現(xiàn)對第一文件的解凍。需要說明的是,恢復(fù)第一文件運(yùn)行的實(shí)現(xiàn)方式還包括其他方式,本發(fā)明實(shí)施例對此不做具體的限定。
示例性地,恢復(fù)第一文件的運(yùn)行,包括:恢復(fù)對第一文件的輸入輸出操作。
實(shí)施例二
圖3為本發(fā)明實(shí)施例提供的一種備份方法的流程示意圖三,該方法用于對虛擬機(jī)進(jìn)行備份,包括:
步驟301:通過guest-agent組件來建立數(shù)據(jù)交換通路;
步驟302:宿主機(jī)利用自身的虛擬化管理器通過數(shù)據(jù)交換通路將備份命令發(fā)送至備份裝置,其中,備份命令用于指示將正在運(yùn)行的第一文件進(jìn)行備份;
其中,宿主機(jī)為安裝虛擬機(jī)的計(jì)算機(jī),宿主機(jī)包括虛擬化管理器。其中,備份裝置可以安裝在計(jì)算機(jī)上,也可以安裝在虛擬機(jī)上。
步驟303:備份裝置根據(jù)備份命令,停止對第一文件進(jìn)行輸入輸出操作;
步驟304:當(dāng)完成對第一文件的停止操作時(shí),備份裝置開始對第一文件對應(yīng)的數(shù)據(jù)進(jìn)行備份;
步驟305:當(dāng)完成對第一文件對應(yīng)的數(shù)據(jù)備份時(shí),備份裝置恢復(fù)第一文件的運(yùn)行。
綜上所述,本發(fā)明實(shí)施例提供了一種備份方法,通過獲取備份命令,備份命令用于指示將正在運(yùn)行的第一文件進(jìn)行備份;根據(jù)備份命令,停止對第一文件進(jìn)行操作;當(dāng)完成對第一文件的停止操作時(shí),開始對第一文件對應(yīng)的數(shù)據(jù)進(jìn)行備份;當(dāng)完成對第一文件對應(yīng)的數(shù)據(jù)備份時(shí),恢復(fù)第一文件的運(yùn)行,以繼續(xù)進(jìn)行對第一文件的操作。采用上述技術(shù)實(shí)現(xiàn)方案,滿足了虛擬機(jī)在開機(jī)的狀態(tài)下實(shí)現(xiàn)備份,保障了備份出的數(shù)據(jù)信息與原數(shù)據(jù)信息的一致性,提高了系統(tǒng)備份的安全性和可靠性。
實(shí)施例三
圖4為本發(fā)明實(shí)施例提供的一種備份裝置的結(jié)構(gòu)示意圖一,參考圖4所示,該裝置包括:獲取單元401、停止單元402、備份單元403和恢復(fù)單元404,其中:
獲取單元401,用于獲取備份命令,備份命令用于指示將正在運(yùn)行的第一文件進(jìn)行備份;
停止單元402,用于根據(jù)獲取單元401獲取的備份命令,停止對第一文件進(jìn)行操作;
備份單元403,用于當(dāng)停止單元402完成對第一文件的停止操作時(shí),開始對第一文件對應(yīng)的數(shù)據(jù)進(jìn)行備份;
恢復(fù)單元404,用于當(dāng)備份單元403完成對第一文件對應(yīng)的數(shù)據(jù)備份時(shí),恢復(fù)第一文件的運(yùn)行,以繼續(xù)進(jìn)行對第一文件的操作。
進(jìn)一步地,停止單元402,具體用于:根據(jù)獲取單元401獲取的備份命令,停止對第一文件進(jìn)行輸入輸出操作。
進(jìn)一步地,恢復(fù)單元404,具體用于:當(dāng)備份單元403完成對第一文件對應(yīng)的數(shù)據(jù)備份時(shí),恢復(fù)對第一文件的輸入輸出操作。
進(jìn)一步地,圖5為本發(fā)明實(shí)施例提供的一種備份裝置的結(jié)構(gòu)示意圖二,參考圖5所示,裝置還包括建立單元405,用于在獲取單元401獲取備份命令之前,建立數(shù)據(jù)交換通路,數(shù)據(jù)交換通路用于傳輸備份命令。
進(jìn)一步地,獲取單元401,具體用于:通過建立單元405建立的數(shù)據(jù)交換通路獲取備份命令。
在實(shí)際應(yīng)用中,上述獲取單元401、停止單元402、備份單元403、恢復(fù)單元404和建立單元405可由位于終端上的處理器實(shí)現(xiàn),具體為中央處理器(cpu)、微處理器(mpu)、數(shù)字信號處理器(dsp)或現(xiàn)場可編程門陣列(fpga)等實(shí)現(xiàn),還包括終端上的存儲(chǔ)器,該存儲(chǔ)器可以通過系統(tǒng)總線與處理器連接,其中,存儲(chǔ)器用于存儲(chǔ)可執(zhí)行程序代碼,該程序代碼包括計(jì)算機(jī)操作指令,存儲(chǔ)器可能包含高速ram存儲(chǔ)器,也可能還包括非易失性存儲(chǔ)器,例如,至少一個(gè)磁盤存儲(chǔ)器。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用硬件實(shí)施例、軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器和光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令的制造品,該指令實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。