中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

linux備份與還原命令 Linux系統(tǒng)備份還原

Linux系統(tǒng)恢復(fù)10個方法

Linux系統(tǒng)恢復(fù)10個方法

為鹽池等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及鹽池網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站設(shè)計制作、做網(wǎng)站、鹽池網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!

在Linux中有一些應(yīng)用程序可以幫助你保存系統(tǒng)快照。大多數(shù)應(yīng)用程序都是針對于新手的,并不需要高級的Linux操作技巧。我們在這里挑選了10個,你可以從中選擇適合自己的應(yīng)用。

Windows中的系統(tǒng)恢復(fù)功能

Windows家族最初的系統(tǒng)恢復(fù)功能要回溯到2000年的Windows ME版本,當(dāng)時還只能恢復(fù)系統(tǒng)文件和注冊表,而且并不穩(wěn)定。在Windows XP和Vista中系統(tǒng)恢復(fù)的性能得到了很大的提高。也是從那時起,系統(tǒng)恢復(fù)開始依賴于一個叫做硬盤快照服務(wù)(Volume Snapshot Service)的系統(tǒng)服務(wù)功能,能夠自動創(chuàng)建系統(tǒng)快照–包括正在使用的文件–然后將這些文件轉(zhuǎn)換為可恢復(fù)的節(jié)點(diǎn)文件。

新的方式給用戶提供了更多的自定義功能,比如用戶可以為快照分配磁盤空間,可以選擇監(jiān)視哪些文件目錄等等。但是還是有很多的限制,比如只有NTFS格式的分區(qū)具有系統(tǒng)恢復(fù)快照功能,而且在Windows 8版本之前,快照并不能長期保存。

Windows的每次版本更新都帶來了混亂,比如Vista的家庭版中沒有提供恢復(fù)從前的系統(tǒng)快照的用戶界面,而Windows 8出現(xiàn)了不兼容之前版本的系統(tǒng)快照的問題,最終Windows 10索性禁用了系統(tǒng)恢復(fù)功能,讓用戶手動啟用與操作,這么看起來這項決定是有意而為。

好了,不再說關(guān)于Windows的事了,還是來看看在Linux中我們應(yīng)該怎么做吧!

Linux系統(tǒng)恢復(fù)的工作原理是什么

呃,實際上這并不是一項系統(tǒng)功能,至少不應(yīng)該在名字里帶上“系統(tǒng)”這兩個字,因為你不會在任何一個Linux系統(tǒng)發(fā)行版的系統(tǒng)菜單中找到所謂的系統(tǒng)恢復(fù)(System Restore)功能。你要做的是找到一個合適的應(yīng)用程序并安裝才可以。絕大多數(shù)的系統(tǒng)恢復(fù)應(yīng)用程序和Windows中系統(tǒng)恢復(fù)功能的工作原理是相同的,在特定的時間節(jié)點(diǎn)為你的系統(tǒng)創(chuàng)建快照文件,然后在系統(tǒng)出現(xiàn)問題的時候,允許你回滾到選定的時間點(diǎn)。

在介紹這些應(yīng)用程序之前,讓我們先簡單的了解一下系統(tǒng)快照究竟是什么?

系統(tǒng)快照與備份的區(qū)別

拋開這兩者的名字不同,總的來說,備份(Backup)是指將文件復(fù)制出一份副本并且保存到另一個位置。備份很少會將整個磁盤備份,那樣做通常是叫做磁盤鏡像或者是磁盤克隆,這種類型的備份實際上是對整個磁盤做了一個鏡像,包括用戶數(shù)據(jù),操作系統(tǒng),啟動分區(qū)等等。磁盤鏡像可以被用在裸機(jī)恢復(fù)工作中。這時候你就可以在不需要安裝操作系統(tǒng)情況下,將一塊硬盤的全部內(nèi)容復(fù)制到另一臺電腦上。

而系統(tǒng)快照(Snapshot)則是在特定的時間節(jié)點(diǎn)上保存文件系統(tǒng)的狀態(tài),并且保存在與文件系統(tǒng)相同的存儲設(shè)備上。通常系統(tǒng)快照中會包含所有的目錄與文件信息,或者至少是保存了操作系統(tǒng)所需要的文件信息。

將快照和文件系統(tǒng)保存在同一個位置就實現(xiàn)了回滾的可能性,同樣也有利于節(jié)省磁盤空間。在這種情況下,每新建一個系統(tǒng)快照并不需要將整個文件系統(tǒng)的狀態(tài)全部保存下來。形象地說,系統(tǒng)快照就像是一個不斷增長的備份過程,每次只是保存和上次不同的信息變化,這也就意味著每一個系統(tǒng)快照都要依賴于上一次系統(tǒng)快照,這樣才能完全完成系統(tǒng)恢復(fù)工作。而與之相反的是,一個完整的磁盤備份或者是磁盤鏡像則與其他的備份文件相互獨(dú)立,可以單獨(dú)完成系統(tǒng)恢復(fù)工作。

系統(tǒng)快照可能會碰到的問題是它們對于硬盤故障非常的脆弱。如果你的硬盤受到了嚴(yán)重的物理損傷,那么很可能你的系統(tǒng)快照就無法幫助你恢復(fù)系統(tǒng)了。為了防止這一點(diǎn),我們建議在安裝與設(shè)置好你的Linux系統(tǒng)之后立即做一份系統(tǒng)快照,然后把它單獨(dú)復(fù)制到另外的存儲設(shè)備中。

保存系統(tǒng)快照

在Linux中有一些應(yīng)用程序可以幫助你保存系統(tǒng)快照。大多數(shù)應(yīng)用程序都是針對于新手的,并不需要高級的Linux操作技巧。我們在這里挑選了一些,你可以從中選擇適合自己的應(yīng)用。

TimeShift

TimeShift提供了一個非常簡潔的圖形用戶界面,你也可以直接在終端輸入命令使用它。默認(rèn)情況下。TimeShift并不會包含用戶的個人文件,但你可以通過自定義將特殊的目錄添加到快照中去。Ubuntu及其分支的用戶可以從開發(fā)者的PPA獲取TimeShift:

sudo apt-add-repository ppa:teejee2008/ppa

sudo apt-get update

sudo apt-get install timeshift

其他版本的用戶可以下載安裝文件并在命令行終端運(yùn)行:

./timeshift-latest-amd.64.run

TimeShift還提供了專門針對BTRFS文件系統(tǒng)的版本,可以支持原生的BTRFS系統(tǒng)快照功能。

工作方式

TimeShift能夠幫助你隨時完成快照工作,或者你也可以設(shè)置讓TimeShift自動創(chuàng)建快照。你可以安排任務(wù)計劃,每小時、每天、每周或者每個月進(jìn)行快照,也可以設(shè)置清除這些快照的時間。TimeShift有一個特殊的選項叫做重啟快照,用來在每次系統(tǒng)重啟之后創(chuàng)建一個新的快照文件。

TimeShift從快照中進(jìn)行系統(tǒng)恢復(fù)是一項非常簡單直接的工作,只要選擇快照文件并且告訴它應(yīng)該存儲的位置就可以了。TimeShift提供了將快照恢復(fù)到外設(shè)的選項,克隆功能能夠直接將現(xiàn)有系統(tǒng)狀態(tài)復(fù)制到另一個設(shè)備中,這在將你的操作系統(tǒng)遷移到另一臺新電腦時非常方便,因為你不再需要從頭開始安裝各種功能和應(yīng)用。

在恢復(fù)快照之前,TimeShift會詢問你是不是需要保存現(xiàn)有的應(yīng)用設(shè)置,并且讓你選擇保存哪一個。請記住TimeShift需要GRUB 2啟動進(jìn)入快照恢復(fù)。

cronopete

如果你認(rèn)為TimeShift的操作已經(jīng)足夠簡單的話,那么Cronopete甚至更加簡單,至少從外觀上看來是這樣的。Cronopete自稱為OS X的時間機(jī)器,與TimeShift工作起來稍有不同。Cronopete為Ubuntu,Debian和Fedora提供了包文件,Arch Linux使用者可以在AUR中找到它。

工作方式

與本文中介紹的其他應(yīng)用程序不同,Cronopete將備份與快照功能捆綁在一起,并且要求你將快照保存在外部設(shè)備上。默認(rèn)情況下,它會每個小時都檢查一遍你的文件變化,但是當(dāng)然可以在設(shè)置中改變這個時間間隔。如果某個文件并沒有發(fā)生變化,那么Cronopete將對這個文件只進(jìn)行一個硬鏈接而并不復(fù)制這份文件,這會幫助節(jié)省磁盤空間。

Cronopete的文件恢復(fù)可能是它最酷的功能,好像真的能幫助你“穿越時間”,也就是說,可視化的瀏覽所有儲存版本的文件與文件夾。想要恢復(fù)哪一個文件,只需要選上它,然后點(diǎn)擊恢復(fù)就可以了,這個文件就會從外部的存儲設(shè)備中復(fù)制到你現(xiàn)有的`系統(tǒng)中來。當(dāng)然這里你可能也猜測到了,Cronopete對于全系統(tǒng)恢復(fù)并不十分具有意義,但是如果你想要保存單獨(dú)文件的多個版本,那么它是一個很好的選擇。

Back In Time

Back In Time的用戶界面看起來非常友好,能夠吸引住Linux新手。它的設(shè)置對話框中提供了非常精細(xì)的操作控件,用戶界面看上去就像是一個文件管理器一樣,在這里你可以閱覽所有的快照,瀏覽快照中的文件,以及恢復(fù)選定的文件與文件夾。

Ubuntu用戶可以從PPA中安裝Back In Time:

sudo add-apt-repository ppa:bit-team/stable

sudo apt-get update

sudo apt-get install backintime-qt4

有些發(fā)行版會在自己的資源庫中提供Back In Time,如果你的發(fā)行版沒有的話,也總可以在網(wǎng)上找到源代碼并且下載安裝。

工作方式

Back In Time會對那些你選擇的目錄創(chuàng)建快照,但是只會恢復(fù)那些擁有寫權(quán)限的目錄。你可以對快照進(jìn)行加密并且存儲在網(wǎng)絡(luò)設(shè)備、外部硬盤或者是本地的文件系統(tǒng)中。Back In Time只會對那些改變過的文件進(jìn)行更新。在設(shè)置選項標(biāo)簽中,你可以選擇在沒有變化發(fā)生的時候禁用快照。

Back In Time的快照時間根據(jù)計劃設(shè)定,每天、每周、每個月或者是每天的某個或某幾個時間段,或者是每次重啟之后。你可以在主工具欄的菜單中自己更改計劃時間。

與Cronopete相似,Back In Time更加適合于基于文件夾或者是基于文件的回滾操作,但是如果你想對整個文件系統(tǒng)進(jìn)行回滾也是同樣可行的?;謴?fù)一個快照相當(dāng)簡單,只要選擇它,并且選擇在哪里進(jìn)行恢復(fù)就可以了,取決于你是只想恢復(fù)幾個文件夾還是對整個系統(tǒng)進(jìn)行恢復(fù)。

Systemback

Systemback的界面很小巧,但是功能卻非常強(qiáng)大。但不幸的是只有Debian和Ubuntu及其分支的用戶可以使用,而沒有提供其他Linux發(fā)行版的安裝文件。Systemback可以通過開發(fā)者PPA安裝:

sudo add-apt-repository ppa:nemh/systemback

sudo apt-get update

sudo apt-get install systemback

工作方式

Systemback并不僅僅是另一個快照工具。它可以把你現(xiàn)在的系統(tǒng)轉(zhuǎn)變?yōu)橐粡坙ive CD或DVD,這樣就可以直接在另一臺電腦上啟動了。它可以修復(fù)或重裝GRUB 2啟動器以及修復(fù)fstab文件,當(dāng)然,Systemback的主要用途還是用于系統(tǒng)快照。

Systemback將快照的總數(shù)量限制在10個以內(nèi)。用戶擁有刪除快照的權(quán)限。快照的功能可以選擇為遞增,也就是只復(fù)制被改變過的文件,而將其他的文件以硬鏈接的形式保存。但是在設(shè)置對話框中,你可以禁用這個功能。在恢復(fù)文件的時候,你可以選擇執(zhí)行全系統(tǒng)恢復(fù),或者只是復(fù)制關(guān)鍵的系統(tǒng)文件。個人數(shù)據(jù)比如照片與文檔并不會被包含在快照中,但是你可以在創(chuàng)建包含用戶數(shù)據(jù)的選項中通過自定義操作將它們轉(zhuǎn)移到live CD中。

Systemback允許用戶自定義自動快照的計劃,但你也將這個選項關(guān)閉來手動設(shè)置恢復(fù)點(diǎn)。需要注意的是Systemback并不支持NTFS文件系統(tǒng),因此不能對NTFS系統(tǒng)分區(qū)進(jìn)行快照或者是恢復(fù)操作。

Snapper

Snapper和openSUSE的關(guān)系非常密切。在其他Linux版本上也許能夠安裝Snapper,但是并不一定能正常工作了。在openSUSE中安裝Snapper的最簡單方法是將它安裝在BTRFS分區(qū)上,這樣做Snapper就能夠自動安裝與配置。你可以使用命令行工具來操作Snapper,或者通過YaST工具,此外還有另一種替代方案snapper-GUI。

工作方式

Snapper能夠創(chuàng)建幾種不同類型的快照,比如在安裝新的應(yīng)用程序之前與之后創(chuàng)建快照。通過這種方式你可以將快照進(jìn)行對比,并且更有效的進(jìn)行系統(tǒng)恢復(fù)。Snapper會為快照自動建立時間計劃,你當(dāng)然也可以把這個功能禁用掉。在Snapper中,快照是存放在與系統(tǒng)相同的分區(qū)中,因此它們會不斷長大,要記得隨時檢查自己的硬盤容量。

默認(rèn)情況下,Snapper只對根分區(qū)創(chuàng)建快照。如果想要包含其他分區(qū)和BTRFS副磁盤卷,你就需要為每一個項目創(chuàng)建一個配置,這必須在命令行終端中完成,你需要以root權(quán)限運(yùn)行下面的命令:

snapper -c CONFIGNAME create-config /PATH

在這里-c代表著配置“configure”,CONFIGNAME是你為這個配置所取的名稱,/PATH則是分區(qū)或是副磁盤卷的位置,例如:

snapper -c home create-config /home

你可以用下面的命令查看當(dāng)前的配置:

snapper list-configs

所有的配置文件都保存在/etc/snapper/configs目錄。在這里,你可以用一個常用的文本編輯器來修改它們,例如你可以禁用每小時創(chuàng)建快照的功能,啟用自動刪除快照的功能,手動設(shè)置可保存舊快照的數(shù)量。

在YaST Snapper模式中,你可以創(chuàng)建并對比快照進(jìn)行系統(tǒng)回滾操作,或者將一個文件或者其他一些被選擇的文件恢復(fù)到以前的版本。

怎樣備份與恢復(fù)已安裝的應(yīng)用程序

了解了怎樣對整個操作系統(tǒng)進(jìn)行恢復(fù)之后,你可能想知道怎樣恢復(fù)那些已經(jīng)安裝的應(yīng)用軟件。這在系統(tǒng)新版升級或重裝系統(tǒng)的情況下很常見。幸運(yùn)的是已經(jīng)有一些工具提供了應(yīng)用程序遷移的功能,而且使用起來非常方便。

Aptik

首先我要提到的是Aptik,它是由TimeShift的開發(fā)者創(chuàng)建的應(yīng)用程序備份工具。

Aptik只能用于基于Ubuntu的發(fā)行版,你可以直接從開發(fā)者PPA安裝:

sudo apt-add-repository ppa:teejee2008/ppa

sudo apt-get update

sudo apt-get install aptik

Aptik能夠以列表的形式輸出系統(tǒng)現(xiàn)有的已安裝的包以及所使用的庫以及下載的包文件。此外還有用于導(dǎo)出應(yīng)用程序設(shè)置、桌面主題和圖標(biāo)集的選項。Aptik會根據(jù)安裝類型對這些包進(jìn)行分類,例如分為操作系統(tǒng)預(yù)裝、用戶自主安裝、自動安裝的依賴與從.deb文件安裝等等。對于.deb文件你可以將它們拖拽到列表中并且包含在備份文件里。備份可以保存在任何位置,如果想把它們提取到一個新安裝的發(fā)行版中,只需要先安裝Aptik,然后在主窗口中選擇備份并進(jìn)行恢復(fù)即可。

Linux Mint

Linux Mint的用戶可以選擇Mint備份工具,功能幾乎與Aptik一模一樣。除了恢復(fù)已安裝的應(yīng)用程序之外,這個工具還可以對所選定的文件夾及其權(quán)限執(zhí)行快速備份。

Arch Linux

Arch Linux的用戶可以使用Backpac來備份與恢復(fù)應(yīng)用程序。Backpac可以建立手動安裝包的列表文件,也可以按照你的選擇單獨(dú)備份文件。使用Backpac恢復(fù)系統(tǒng)狀態(tài)會重新安裝所輸出的包,刪除掉快照中并不包含的文件,并且會用之前輸出的版本覆蓋系統(tǒng)文件。

dpkg

當(dāng)然,你可以不使用任何一個第三方工具來完成這樣的操作。在包管理系統(tǒng)中提供了這樣的工具。在基于dpkg的系統(tǒng)中,你可以使用下面的操作來輸出一個已安裝應(yīng)用的列表文件:

dpkg --get-selections /home/yourusername/apps.txt

然后,將這個txt文件與庫信息從/etc/apt/sources.d/目錄與/etc/apt/sources.list文件復(fù)制到新的系統(tǒng)中。使用如下命令行并提供正確的文件路徑就可以將備份的應(yīng)用遷移到新的系統(tǒng)中:

dpkg --set-selections /path/to/apps.txt

sudo apt-get update

sudo apt-get dselect-upgrade

有些圖形化的包管理工具例如Synaptic能夠提供圖形化的用戶界面,用來輸出與導(dǎo)入已經(jīng)安裝的應(yīng)用程序的列表,不需要使用終端命令行的形式來操作。

高級系統(tǒng)回滾解決方案

如果上面建議的這些應(yīng)用你并不認(rèn)為合適,那么我們還有其他的解決方案。我在這里將它們稱為“高級”并不意味著這些方案非常復(fù)雜,而是說它們可能并不是新手用戶的第一選擇。

Rsnapshot

如果你想在命令行終端使用一種極簡而快速的方法進(jìn)行快照操作,那么可以試一下Rsnapshot。你可以在絕大多數(shù)Linux發(fā)行版的資源庫中找到它。Rsnapshot的所有設(shè)置都在/etc/rsnapshot.conf這個文件中。你可以打開這個文件,自定義快照時間表,設(shè)置何時刪除舊的快照,以及需要包含哪些文件與文件夾。當(dāng)你設(shè)置完畢之后,最好使用下面兩個命令來做一下測試:

rsnapshot configtest

rsnapshot -t hourly

這樣可以保證你的所有設(shè)置都正常啟用。請記住修改設(shè)置文件時需要在兩個功能選項中使用一個tab符進(jìn)行分割而并不是空格,因此不要用空格鍵移動這些參數(shù)。Rsnapshot沒有自動恢復(fù)功能,所以你只能從選定的快照中手動復(fù)制文件。

Obnam

Obnam與Rsnapshot非常相似,另外還提供了一些有趣的功能。它可以先創(chuàng)建一個全系統(tǒng)備份,然后逐漸生成包含新的或是改變過的文件的快照。你可以對快照進(jìn)行加密與自動解密。Obnam在進(jìn)行系統(tǒng)恢復(fù)時的操作也是相似的,提供命令,并且讓你選擇存儲的位置。

你可以設(shè)置或是修改自定義路徑,將快照存放在服務(wù)器上或者是其他遠(yuǎn)程設(shè)備上。Obnam提供的官方手冊是一項很了不起的工作,清楚的解釋了所有的功能操作。

LVM Snapshots

如果系統(tǒng)中將會存放一些重要的數(shù)據(jù),那么一定要事先考慮好備份與恢復(fù)的方法。如果你正在安裝與設(shè)置Linux系統(tǒng)的話,那么值得考慮將LVM(Logical Volume Manager)作為硬盤的管理工具。

準(zhǔn)確的說,LVM并不算是一個應(yīng)用程序,它在Linux內(nèi)核中提供了內(nèi)置的快照功能,可以將快照安裝到任何其他磁盤或分區(qū),合并若干個快照,并還原它們來解決系統(tǒng)問題。或者你可以使用Linux內(nèi)核模塊dattobd支持對運(yùn)行中的系統(tǒng)進(jìn)行增量快照,這樣無需卸載分區(qū)或重新啟動計算機(jī)。

總結(jié)

正如你所看到的,有很多種選擇可以在Linux中獲得系統(tǒng)恢復(fù)功能,然而你會發(fā)現(xiàn)它們在技術(shù)上是非常相似的,那么有沒有更好的方法來代替現(xiàn)有的系統(tǒng)恢復(fù)功能呢?也許在未來隨著這些應(yīng)用程序的不斷發(fā)展將會出現(xiàn)更好的方法,或者是對這些現(xiàn)有的工具更有效的進(jìn)行組合應(yīng)用,這些都需要使用者們不斷進(jìn)行探索發(fā)掘。

;

Linux具體怎樣備份和還原系統(tǒng)?

我的是使用tar包來備份我的debian的系統(tǒng),然后我還重新分區(qū)了,裝了雙系統(tǒng)win7和還原的linux。。

你沒說具體,不能開機(jī)的筆記本是什么原因,是系統(tǒng)原因的話,最好是用光盤急救,如果你確實想這樣的話。那就推薦tar命令

tar -zcf boot.tar.gz /boot 這樣就可以備份boot,按照這樣就可以備份其他目錄,把該備份的備份,有的不用備份。像proc,sys.dev,mnt,media,tmp就可以不用備份。

都做完后,在用條命令grub-install 安裝下你的引導(dǎo)程序,具體你自己百度下grub-install的使用方法。

linux 備份的數(shù)據(jù)庫怎么恢復(fù)

一、 使用mysql相關(guān)命令進(jìn)行簡單的本地備份

1 mysqlldump命令

mysqldump 是采用SQL級別的備份機(jī)制,它將數(shù)據(jù)表導(dǎo)成 SQL 腳本文件,在不同的 MySQL 版本之間升級時相對比較合適,這也是最常用的備份方法。

使用 mysqldump進(jìn)行備份非常簡單,如果要備份數(shù)據(jù)庫” db_backup ”,使用命令:

#mysqldump –u -p phpbb_db_backup /usr/backups/mysql/db_backup2008-1-6.sql

還可以使用gzip命令對備份文件進(jìn)行壓縮:

#mysqldump db_backup | gzip /usr/backups/mysql/ db_backup2008-1-6.sql.gz (備份后生成的sql不含建庫語句!)

只備份一些頻繁更新的數(shù)據(jù)庫表:

## mysqldump sample_db articles comments links /usr/backups/mysql/sample_db.art_comm_lin.2008-1-6.sql

上面的命令會備份articles, comments, 和links 三個表。

恢復(fù)數(shù)據(jù)使用命令:

#mysql –u -p db_backup /usr/backups/mysql/ db_backup2008-1-6.sql

注意使用這個命令時必須保證數(shù)據(jù)庫正在運(yùn)行。

2 使用 SOURCE 語法

其實這不是標(biāo)準(zhǔn)的 SQL 語法,而是 mysql 客戶端提供的功能,例如:

# SOURCE /tmp/db_name.sql;

這里需要指定文件的絕對路徑,并且必須是 mysqld 運(yùn)行用戶(例如 nobody)有權(quán)限讀取的文件。

3 mysqlhotcopy備份

mysqlhotcopy 只能用于備份 MyISAM,并且只能運(yùn)行在 linux 和Unix 和 NetWare 系統(tǒng)上。mysqlhotcopy 支持一次性拷貝多個數(shù)據(jù)庫,同時還支持正則表達(dá)。以下是幾個例子:

#mysqlhotcopy -h=localhost -u=goodcjh -p=goodcjh db_name /tmp

(把數(shù)據(jù)庫目錄 db_name 拷貝到 /tmp 下)

注意,想要使用 mysqlhotcopy,必須要有 SELECT、RELOAD(要執(zhí)行 FLUSH TABLES) 權(quán)限,并且還必須要能夠有讀取 datadir/db_name 目錄的權(quán)限。

還原數(shù)據(jù)庫方法:

mysqlhotcopy 備份出來的是整個數(shù)據(jù)庫目錄,使用時可以直接拷貝到 mysqld 指定的 目錄 (在這里是 /usr/local/mysql/data/)目錄下即可,同時要注意權(quán)限的問題,另外首先應(yīng)當(dāng)刪除數(shù)據(jù)庫舊副本如下例:

# /bin/rm -rf /mysql-backup/**//*old

關(guān)閉mysql 服務(wù)器、復(fù)制文件、查詢啟動mysql服務(wù)器的三個步驟:

# /etc/init.d/mysqld stop

Stopping MySQL: [ OK ]

# cp -af /mysql-backup/**//* /var/lib/mysql /

# /etc/init.d/mysqld start

Starting MySQL: [ OK ]

#chown -R nobody:nobody /usr/local/mysql/data/ (將 db_name 目錄的屬主改成 mysqld 運(yùn)行用戶)

二、使用網(wǎng)絡(luò)備份

將MYSQL數(shù)據(jù)放在一臺計算機(jī)上是不安全的,所以應(yīng)當(dāng)把數(shù)據(jù)備份到局域網(wǎng)中其他Linux計算機(jī)中。假設(shè)Mysql服務(wù)器IP地址是:192.168.1.3。局域網(wǎng)使用Linux的遠(yuǎn)程計算機(jī)IP地址是192.168.1.4;類似于windows的網(wǎng)絡(luò)共享,UNIX(Linux)系統(tǒng)也有自己的網(wǎng)絡(luò)共享,那就是NFS(網(wǎng)絡(luò)文件系統(tǒng)),在linux客戶端掛接(mount)NFS磁盤共享之前,必須先配置好NFS服務(wù)端。linux系統(tǒng)NFS服務(wù)端配置方法如下:

(1)修改 /etc/exports,增加共享目錄

/export/home/sunky 192.168.1.4(rw)

/export/home/sunky1 *(rw)

/export/home/sunky2 linux-client(rw)

注:/export/home/目錄下的sunky、sunky1、sunky2是準(zhǔn)備共享的目錄,10.140.133.23、*、linux-client是被允許掛接此共享linux客戶機(jī)的IP地址或主機(jī)名。如果要使用主機(jī)名linux-client必須在服務(wù)端主機(jī)/etc/hosts文件里增加linux-client主機(jī)ip定義。格式如下:

192.168.1.4 linux-client

若修改/etc/export文件增加新的共享,應(yīng)先停止NFS服務(wù),再啟動NFS服務(wù)方能使新增加的共享起作用。使用命令exportfs -rv也可以達(dá)到同樣的效果。linux客戶端掛接(mount)其他linux系統(tǒng)或UNIX系統(tǒng)的NFS共享。這里我們假設(shè)192.168.1.4是NFS服務(wù)端的主機(jī)IP地址,當(dāng)然這里也可以使用主機(jī)名,但必須在本機(jī)/etc/hosts文件里增加服務(wù)端ip定義。/export/home/sunky為服務(wù)端共享的目錄。如此就可以在linux客戶端通過/mnt/nfs來訪問其它linux系統(tǒng)或UNIX系統(tǒng)以NFS方式共享出來的文件了。

把MYSQL數(shù)據(jù)備份到使用Linux的遠(yuǎn)程計算機(jī)需要在兩端都安裝NFS協(xié)議(Network File System),遠(yuǎn)程N(yùn)FS計算機(jī)安裝NFS協(xié)議后還要修改配置文件:/etc/exports,加入一行:

/usr/backups/mysql/ 192.168.1.4 (rw, no_root_squash)

表示將/usr/backups/mysql/目錄共享。這個目錄具有遠(yuǎn)程root用戶讀寫權(quán)限。保存NFS配置文件,然后使用命令:

#exportfs -a –r

然后重新啟動NFS服務(wù):

#service nfsd start

遠(yuǎn)程計算機(jī)設(shè)定后,在MYSQL服務(wù)器/mnt 目錄下建立一個backup_share目錄:

#mkdir /mnt/backup_share

將遠(yuǎn)程的Linux計算機(jī)的/usr/backups/mysql/目錄掛載到MYSQL服務(wù)器的/mnt/backup_share目錄下:

# mount -t nfs 192.168.1.4:/usr/backups/mysql /mnt/backup_share

將目錄掛載進(jìn)來后,只要進(jìn)入/mnt/backup_share 目錄,就等于到了IP地址:192.168.1.4那部NFS 計算機(jī)的/usr/backups/mysql 目錄中。下面使用mysqldump把“phpbb_db_backup”備份到遠(yuǎn)程計算機(jī):

# mysqldump db_backup /mnt/backup_share/ db_backup2008-1-6.sql

自動完成網(wǎng)絡(luò)備份的方法:

Linux 服務(wù)器上的程序每天都在更新 MySQL 數(shù)據(jù)庫,于是就想起寫一個 shell 腳本,結(jié)合 crontab,定時備份數(shù)據(jù)庫。建立一個shell腳本:sample_db_backup.sh

# At the very end the $(date +%F) 自動添加備份日期

mysqldump -u username -p password -h hostname sample_db /mnt/backup_share/sample_db.$(date +%F)

#un-mount the filesystem

umount /mnt/backup_share

# mount \u2013o soft 192.168.1.4:/archive /mnt/backup_share

說明:mount NFS服務(wù)器的一個重要參數(shù):hard (硬) mount或soft(軟)mount。

硬掛載: NFS客戶機(jī)會不斷的嘗試與NFS服務(wù)器的連接(在后臺,一般不會給出任何提示信息),直到掛載上為止。

軟掛載:會在前臺嘗試與NFS服務(wù)器的連接,是默認(rèn)的連接方式。當(dāng)收到錯誤信息后終止mount嘗試,并給出相關(guān)信息。

對于到底是使用硬掛載還是軟掛載的問題,這主要取決于你訪問什么信息有關(guān)。例如你是想察看NFS服務(wù)器的視頻文件時,你絕對不會希望由于一些意外的情況(如網(wǎng)絡(luò)速度一下子變的很慢)而使系統(tǒng)輸出大量的錯誤信息,如果此時你用的是硬掛載方式的話,系統(tǒng)就會等待,直到能夠重新與NFS 服務(wù)器建立連接傳輸信息。另外如果是非關(guān)鍵數(shù)據(jù)的話也可以使用軟掛載方式,如FTP一些數(shù)據(jù)等,這樣在遠(yuǎn)程機(jī)器暫時連接不上或關(guān)閉時就不會掛起你的會話過程。

下面建立腳本文件權(quán)限:chmod +x ./sample_db_backup.sh

然后使用將此腳本加到 /etc/crontab 定時任務(wù)中:

01 5 * * 0 mysql /home/mysql/ sample_db_backup.sh

好了,每周日凌晨 5:01 系統(tǒng)就會自動運(yùn)行 sample_db_backup.sh 文件通過網(wǎng)絡(luò)備份 MySQL 數(shù)據(jù)庫了。

三、實時恢復(fù)M y S Q L數(shù)據(jù)方法

在對MySQL數(shù)據(jù)和表格結(jié)構(gòu)進(jìn)行備份時,mysqldump是一個非常有用的工具。然而,通常情況下,一般一天只備份一次,或者在一個特定的間隔備份一次。如果在剛備份完成的一段時間以內(nèi)數(shù)據(jù)丟失,那么這些數(shù)據(jù)很有可能無法恢復(fù)。有什么方法可以對數(shù)據(jù)進(jìn)行實時性地保護(hù)呢?事實上,現(xiàn)在有幾種方法都可以實現(xiàn)MySQL數(shù)據(jù)庫的實時保護(hù)。這里介紹其中一種,即使用二進(jìn)制日志進(jìn)行數(shù)據(jù)恢復(fù)。

1 設(shè)置二進(jìn)制日志方法

要想從二進(jìn)制日志恢復(fù)數(shù)據(jù),你需要知道當(dāng)前二進(jìn)制日志文件的路徑和文件名。一般可以從選項文件(即my.cnf or my.ini,取決于你的系統(tǒng))中找到路徑。如果未包含在選項文件中,當(dāng)服務(wù)器啟動時,可以在命令行中以選項的形式給出。啟用二進(jìn)制日志的選項為-- log-bin。要想確定當(dāng)前的二進(jìn)制日志文件的文件名,輸入下面的MySQL語句:

# SHOW BINLOG EVENTS \G

2 最簡單的數(shù)據(jù)恢復(fù)

每天備份和運(yùn)行二進(jìn)制日志的確是一個在MySQL服務(wù)器中恢復(fù)數(shù)據(jù)的不錯方法。比如,可以每天在深夜使用mysqldump對數(shù)據(jù)進(jìn)行備份,如果某天在數(shù)據(jù)備份完成后的一段時間里,由于某種原因數(shù)據(jù)丟失,可以使用以下方法來對其進(jìn)行恢復(fù)。首先,停止MySQL服務(wù)器,然后使用以下命令重新啟動MySQL服務(wù)器。該命令將保證是惟一可以訪問該數(shù)據(jù)庫服務(wù)器的人:

# /etc/init.d/mysqld stop

Stopping MySQL: [ OK ]

# mysqld --socket=/tmp/mysql_restore.sock --skip-networking

這里, 一socket選項將為U n i x 系統(tǒng)命名一個不同的Socket文件。一旦服務(wù)器處于獨(dú)占控制之下,就可以放心地對數(shù)據(jù)庫進(jìn)行操作,而不用擔(dān)心在進(jìn)行數(shù)據(jù)恢復(fù)的過程中有用戶嘗試訪問數(shù)據(jù)庫而導(dǎo)致更多的麻煩。進(jìn)行恢復(fù)的第一個步驟是恢復(fù)晚上備份好的dump文件:

#mysql -u root -pmypwd --socket=/tmp/mysql_restore.sock /var/backup/20080120.sql

該命令可以將數(shù)據(jù)庫的內(nèi)容恢復(fù)至晚上剛剛完成備份的內(nèi)容。要恢復(fù)dump文件創(chuàng)建后的數(shù)據(jù)庫事務(wù)處理, 可以使用mysqlbinlog工具。如果每天晚上進(jìn)行備份操作時都對日志進(jìn)行flush操作,則可以使用以下命令行工具將整個二進(jìn)制日志文件進(jìn)行恢復(fù):

mysqlbinlog /var/log/mysql/bin.123456 \

| mysql -u root -pmypwd --socket=/tmp/mysql_restore.sock

3 針對某一時問點(diǎn)的恢復(fù)

對于MySQL 4.1.4,可以在mysqlbinlog語句中通過--start-date和--stop-date選項指定DATETIME格式的起止時間。假設(shè)用戶在2008-1-22上午10點(diǎn)執(zhí)行的SQL語句刪除了一個大的數(shù)據(jù)表,則可以使用以下命令進(jìn)行恢復(fù):要想恢復(fù)表和數(shù)據(jù),你可以恢復(fù)前晚上的備份,并輸入:

#mysqlbinlog --stop-date="2008-1-22 9:59:59"

/var/log/mysql/bin.123456 |

mysql -u root -pmypwd \

--socket=/tmp/mysql_restore.sock

#mysql -u root -pmypwd

該語句將恢復(fù)所有給定一stop-date日期之前的數(shù)據(jù)。如果在執(zhí)行某SQL語句數(shù)小時之后才發(fā)現(xiàn)執(zhí)行了錯誤操作,那么可能還需要恢復(fù)之后輸入的一些數(shù)據(jù)。這時, 也可以通過mysqlbinlog來完成該功能:

#mysqlbinlog --start-date="2008-1-22 10:01:00" \

/var/log/mysql/bin.123456 \

| mysql -u root -pmypwd \

--socket=/tmp/mysql_restore.sock

#mysql -u root -pmypwd

在該行中,從上午10:01登錄的SQL語句將運(yùn)行。組合執(zhí)行前夜的轉(zhuǎn)儲文件和mysqlbinlog的兩行可以將所有數(shù)據(jù)恢復(fù)到上午10:00前一秒鐘。你應(yīng)檢查日志以確保時間確切。

4 使用Position進(jìn)行恢復(fù)

也可以不指定日期和時間,而使用mysqlbinlog的選項--start-position和--stop-position來指定日志位置。它們的作用與起止日選項相同,不同的是給出了從日志起的位置號。使用日志位置是更準(zhǔn)確的恢復(fù)方法,特別是當(dāng)由于破壞性SQL語句同時發(fā)生許多事務(wù)的時候。要想確定位置號,可以運(yùn)行mysqlbinlog尋找執(zhí)行了不期望的事務(wù)的時間范圍,但應(yīng)將結(jié)果重新指向文本文件以便進(jìn)行檢查。操作命令為:

mysqlbinlog --start-date="2005-04-20 9:55:00" --stop-date="2005-04-20 10:05:00"

/var/log/mysql/bin.123456 /tmp/mysql_restore.sql

該命令將在/tmp目錄創(chuàng)建小的文本文件,將顯示執(zhí)行了錯誤的SQL語句時的SQL語句。你可以用vi或者gedit文本編輯器打開該文件,尋找你不要想重復(fù)的語句。如果二進(jìn)制日志中的位置號用于停止和繼續(xù)恢復(fù)操作,應(yīng)進(jìn)行注釋。用log_pos加一個數(shù)字來標(biāo)記位置。使用位置號恢復(fù)了以前的備份文件后,你應(yīng)從命令行輸入下面內(nèi)容:

mysqlbinlog --stop-position="368312" /var/log/mysql/bin.123456

| mysql -u root -pmypwd

mysqlbinlog --start-position="368315" /var/log/mysql/bin.123456

| mysql -u root -pmypwd

上面的第1行將恢復(fù)到停止位置為止的所有事務(wù)。下一行將恢復(fù)從給定的起始位置直到二進(jìn)制日志結(jié)束的所有事務(wù)。因為mysqlbinlog的輸出包括每個SQL語句記錄之前的SET TIMESTAMP語句,恢復(fù)的數(shù)據(jù)和相關(guān)MySQL日志將反應(yīng)事務(wù)執(zhí)行的原時間。

linux系統(tǒng)怎么做整個系統(tǒng)備份還原

1.備份

a)可以直接通過tar對整個文件系統(tǒng)(’/‘)進(jìn)行備份,但是有幾點(diǎn)需要注意:

i. 不能備份以下幾個文件(目錄)

當(dāng)前壓縮文件

/proc文件夾

/lost+found文件夾

/mnt文件夾

/sys文件夾

/media文件夾

b)所以,命令為:

tar cvpzf backup.tar.gz --exclude=/proc --exclude=/lost+found --exclude=/backup.tar.gz --exclude=/mnt --exclude=/sys --exclude=/media/

2.還原

a) Linux可以再正在遠(yuǎn)行的系統(tǒng)中還原系統(tǒng),如果當(dāng)前啟動無法啟動,可以通過live cd來啟動并執(zhí)行恢復(fù)操作

b) 操作如下

tar xvpfz backup.tar.gz -C /

c) 需要額外創(chuàng)建目錄

i. mkdir proc

ii. mkdir lost+found

iii. mkdir mnt

iv. mkdir sys

文章標(biāo)題:linux備份與還原命令 Linux系統(tǒng)備份還原
瀏覽路徑:http://www.rwnh.cn/article26/doohjcg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化全網(wǎng)營銷推廣、動態(tài)網(wǎng)站、微信小程序外貿(mào)建站、關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
华宁县| 温宿县| 莱阳市| 肇州县| 车致| 疏勒县| 双柏县| 县级市| 普宁市| 丁青县| 遵义市| 玉门市| 高碑店市| 伊宁县| 南漳县| 西平县| 临桂县| 白河县| 遂昌县| 鄂托克旗| 临湘市| 内乡县| 贵州省| 玛沁县| 巴青县| 达州市| 休宁县| 饶阳县| 金堂县| 佛山市| 定襄县| 西华县| 宿松县| 济南市| 九龙城区| 西安市| 广丰县| 凤庆县| 舞钢市| 石棉县| 拜城县|