1. sql SERVER恢復策略
Microsoft SQL Server的資料庫備份和恢復策略
一、概述
備份和恢復是資料庫管理員維護資料庫安全性和完整性的重要操作。備份是恢復資料庫最容易和最能防止意外的保證方法。沒有備份,所有的數據都可能會丟失。備份可以防止表和資料庫遭受破壞、介質失效或用戶錯誤而造成數據災難。恢復是在意外發生後,利用備份來恢復資料庫的操作。
Microsoft SQL Server資料庫中對於數據的備份和恢復有幾種不同的方法,本人結合以往的一些經驗,對其歸納如下。
二、常用的備份和恢復資料庫的方法
1、Microsoft SQL Server中的備份和恢復:
1)備份類型,分別為:
•資料庫備份(Database Backups)
•事務日誌備份(Transaction Log Backup)
•差異備份(Differential Database Backups)
•文件和文件組備份(File and File Group Backup)
A.資料庫備份(Database Backups)
資料庫備份是指對資料庫的完整備份,包括所有的數據以及資料庫對象。實際上備份資料庫過程就是首先將事務日誌寫到磁碟上,然後根據事務創建相同的資料庫和資料庫對象以及拷貝數據的過程。由於是對資料庫的完全備份,所以這種備份類型不僅速度較慢,而且將佔用大量磁碟空間。
B.事務日誌備份(Transaction Log Backup)
事務日誌備份是指對資料庫發生的事務進行備份,包括從上次進行事務日誌備份、差異備份和資料庫完全備份之後,所有已經完成的事務。
C.差異備份(Differential Database Backups)
差異備份是指將最近一次資料庫備份以來發生的數據變化備份起來,因此差異備份實際上是一種增量資料庫備份。與完整資料庫備份相比,差異備份由於備份的數據量較小,所以備份和恢復所用的時間較短。但是它卻無法像事務日誌備份那樣提供到失敗點的無數據損失備份。
D.文件和文件組備份(File and File Group Backup)
文件或文件組備份是指對資料庫文件或文件夾進行備份,但其不像完整的資料庫備份那樣同時也進行事務日誌備份。使用該備份方法可提高資料庫恢復的速度,因為其僅對遭到破壞的文件或文件組進行恢復。
2)資料庫恢復模式
•簡單恢復(SimpleRecovery)
•完全恢復(Full Recovery)
•批日誌恢復(Bulk-logged Recovery)
A.簡單恢復(Simple Recovery)
所謂簡單恢復就是指在進行資料庫恢復時僅使用了資料庫備份或差異備份,而不涉及事務日誌備份。簡單恢復模式可使資料庫恢復到上一次備份的狀態,但由於不使用事務日誌備份來進行恢復,所以無法將資料庫恢復到失敗點狀態。
B.完全恢復(Full Recovery)
完全資料庫恢復模式是指通過使用資料庫備份和事務日誌備份將資料庫恢復到發生失敗的時刻,因此幾乎不造成任何數據丟失,這成為對付因存儲介質損壞而數據丟失的最佳方法。
C.批日誌恢復(Bulk-logged Recovery)
批日誌恢復在性能上要優於簡單恢復和完全恢復模式,它能盡最大努力減少批操作所需要的存儲空間。
2、使用SQL SERVER的管理器ENTERPRISE MANAGER進行備份和恢復
1)完全手工方式。
在這種方式下,選擇要備份和恢復的資料庫,單擊滑鼠右鍵,在快捷菜單中的「ALL TASKS」下選擇備份或者恢復資料庫。
2)半手工方式。
這種方式就是管理員事先建立備份或者恢復資料庫的作業,待到備份或者恢復資料庫的時候,管理員打開「SQL SERVER ENTEPRISE MANAGER」,在「MANAGER」里找到相應的作業,然後執行之。
3)全自動方式。
在資料庫管理器裡面,管理員事先建立好恢復或者備份資料庫的作業,然後定製一個執行計劃,讓計算機在特定的條件下自己執行備份和恢復操作。
作業是ENTERPRISE MANAGER提供的一種定期處理數據的一種方法,前面提到的半手工方式和全自動方式雖然利用了作業,但它需要在ENTERPRISE MANAGER里啟動和關閉作業;現在還可以在應用程序客戶端啟動和關閉作業的機制以作業機制實現資料庫的恢復和備份,就是事先在建立備份和恢復資料庫的作業,在應用程序客戶端用控制體啟動相應的執行體來實現之。用這種方式實現資料庫的備份和恢復,用戶不必打開資料庫管理器進行操作,用戶可以在任何一個應用程序客戶端完成操作。
3、異機備份策略
在區域網內的任何一台工作站計算機上安裝Microsoft Windows NT及Microsoft SQL Server,並在該機上建立一個與伺服器中的資料庫同名的資料庫,利用Microsoft SQL Server系統本身提供的異機傳送工具(在Microsof SQL Enterprise Manager中的Tools菜單下的Database/Object Transfer)通過設置定時(可以是每周、每月、每日或每時)由計算機自動的把伺服器中資料庫的數據傳送到該工作站機的資料庫中,這樣一旦伺服器(操作系統)崩潰或Microsoft SQL Server系統崩潰時,只要重裝伺服器操作系統(Microsoft Windows NT)或重裝Microsoft SQL Server仍然可以採用異機傳送工具來通過該工作站機把數據傳回至伺服器的Microsoft SQL Server資料庫中,以確保數據的安全恢復。
三、比較
上述這三種備份和恢復的方式,分別是在SQL Server之內、SQL SERVER的管理器中和異機中實現的。
SQL Server中的備份和恢復是資料庫本身的一個功能,而且其提供了不同級別的備份和恢復策略,是一種比較完善的資料庫安全保護措施,但由於此操作只能在資料庫管理器中進行,所以對於人員和設備的要求比較高,僅限於有限個人和機器可以操作,所以操作起來有一定的局限性。
SQL SERVER的管理器中的備份和恢復可以利用作業機制在任何一個應用程序客戶端完成操作,打破了我們常規對大型資料庫備份和恢復必須在資料庫管理器里進行的局限性,為在應用程序客戶端實現復雜的資料庫維護提供了一個思路,也大大方便了用戶的操作。但是由於這種操作的方便性,也決定了其有一定的不安全性。
異機中的備份和恢復是最安全最可靠的方式,而且對於資料庫的恢復來說也是最方便的一種,它完全避免了任何形式的數據損毀的威脅,特別是針對伺服器崩潰和Microsoft SQL Server系統崩潰,其恢復效果是很理想的。因此對於一些重要的大型資料庫來說是很可取的。但是由於成本較高,採用這種方法對於一些較小型的資料庫系統是比較難以實現的。
四、結論
上述的三種方式都是資料庫備份和恢復較為常用的一些方法,雖然各自實現的方式不同,但都達到了保護數據安全的目的。所以本人認為這三種方法都是可取的。
但是對於具體的案例,還需要仔細考慮各自系統的特性和方法的可操作性,例如一般中小型的資料庫,網內工作站計算機的分布范圍不是很大(象一座大廈內),距離伺服器的比較近時,採用Microsoft SQL Server內的備份恢復策略就完全可以解決問題;而對於一些伺服器距離較遠的資料庫系統,人員無法常常去到伺服器所在地去實施備份和恢復的,採用SQL SERVER的管理器中的策略就很理想;再者對於資料庫內數據比較龐大,恢復起來需要一定的時間的,就不防採用異機備份的策略,可以大大降低因系統崩潰所帶來的損失。
總之,事物總有其兩面性,沒有哪種方法是適用於任何情況的,我們應該在實際工作中多總結、歸納,逐漸摸索出最適合自身系統的一種解決方案,這樣才能使我們的工作順利開展
2. SQL資料庫如何還原
把資料庫的備份文件放到伺服器的任意目錄下先,
然後按下面的步驟做。
如何從備份設備還原備份(企業管理器)
從備份設備還原備份
展開伺服器組,然後展開伺服器。
展開"資料庫"文件夾,右擊資料庫,指向"所有任務"子菜單,然後單擊"還原資料庫"命令。
在"還原為資料庫"框中,如果要還原的資料庫名稱與顯示的默認資料庫名稱不同,請在其中進行輸入或選擇。若要用新名稱還原資料庫,請輸入新的資料庫名稱。
說明
為資料庫指定新名稱將自動為從資料庫備份中還原的資料庫文件指定新名稱。
單擊"從設備",然後單擊"選擇設備"。
在"還原自"下,單擊"磁帶"或"磁碟",然後選擇還原設備。
如果沒有出現設備,則單擊"添加"以添加現有的備份設備或創建新的備份設備。在"還原資料庫"對話框內,單擊"查看內容"並選擇要還原的備份集。
說明
此選項將掃描備份集以獲得備份內容信息,該操作可能需要花費較長時間,特別是在使用磁帶設備時。如果已經知道要還原的備份集,則在"備份號"中輸入備份集編號。
在"還原備份集"下執行下列操作之一:
單擊"資料庫
—
完全"還原資料庫備份。
單擊"資料庫
—
差異"還原差異資料庫備份。
單擊"事務日誌"應用事務日誌備份。
單擊"文件或文件組"還原文件或文件組備份。指定文件或文件組的名稱。
單擊"選項"選項卡,然後執行下列操作之一:(可選)
單擊"使資料庫可以繼續運行,但無法還原其它事務日誌",如果沒有其它要應用的事務日誌備份。
單擊"使資料庫不再運行,但能還原其它事務日誌",如果要應用其它事務日誌備份。
3. sql 2005如何還原資料庫中的一個文件組或者 是文件
1、你打開
SQL
Server
Management
Studio,然後連接進入
資料庫管理
2、點資料庫右鍵
里有個還原資料庫
在目標資料庫那裡輸入你要還原資料庫的名字(這個名字你自己隨便定義就可以了)
3、然後在選擇你的BAK數據備份文件。然後還原就是了。他會自動給你還原成你命名的哪個資料庫的。不會影響你原來的資料庫。
4. 怎麼用sql語句備份恢復sql2008資料庫
SQL語句備份和恢復
SQL
Server:
備份命令:
BACKUP
DATABASE
test
TO
disk
=
'c:\test'
WITH
FORMAT,
NAME
=
'Full
Backup
of
MyNwind'
解釋如下:
NAME
=
'Full
Backup
of
MyNwind'
--這個是備注,隨便寫。
還原命令:
USE
master
GO
RESTORE
DATABASE
test_wt
FROM
disk
=
'c:\test_wt'
GO
MySQL:
備份:
mysqlmp
-u
root
-p
database_name
>
d:\db.bak
恢復:
mysql
-u
root
-p
database_name
<
d:\db.bak
注意:在WIN下,路徑用path/filename.sql是不行的,那就用path\filename.sql