當前位置:首頁 » 雲伺服器 » 伺服器掛了如何恢復sql數據

伺服器掛了如何恢復sql數據

發布時間: 2024-04-17 17:54:01

sql Server的文件恢復技術

SQL Server有兩種備份方式 一種是使用BACKUP DATABASE將資料庫文件備份出去 另外一種就是直接拷貝資料庫文件mdf和日誌文件ldf的方式 本文中 我們將主要介紹一下後者的備份與恢復 (本文中假定您目前已經能夠熟練使用Server企業管理器和SQL Server查詢分析器)

正常的備份 恢復方式

正常方式下 我們要備份一個資料庫 首先要先將該資料庫從運行的數據伺服器中斷開 或者停掉整個資料庫伺服器 然後復制文件

卸下資料庫的命令

Sp_detach_db 資料庫名

連接資料庫的命令

Sp_attach_db或者sp_attach_single_file_db s_attach_db [@dbname =] ′dbname′ [@filename =] ′filename_n′ [ ] sp_attach_single_file_db [@dbname =] ′dbname′ [@physname =] ′physical_name′

使用此方法可以正確恢復SQL Sever 和SQL Server 的資料庫文件 要點是備份的時候一定要將mdf和ldf兩個文件都備份下來 mdf文件是資料庫數據文件 ldf是資料庫日誌文件

例子

假設資料庫為test 其數據文件為test_data mdf 日誌文件為test_log ldf 下面我們討論一下如何備份 恢復該資料庫

卸下資料庫

sp_detach_db 』test』

連接資料庫

sp_attach_db 』test』 』C:Program FilesMicrosoft SQL ServerMSSQLDatatest_data mdf』 』C:Program FilesMicrosoft SQL ServerMSSQLDatatest_log ldf』sp_attach_single_file_db 』test』 』C:Program FilesMicrosoft SQL ServerMSSQLDatatest_data mdf』

只有mdf文件的恢復技術

由於種種原因 我們如果當時僅僅備份了mdf文件 那麼恢復起來就是一件很麻煩的事情了

如果您的mdf文件是當前資料庫產生的 那麼很僥幸 也許你使用sp_attach_db或者sp_attach_single_file_db可以恢復資料庫 但是會出現類似下面的提示信息

設備激活錯誤 物理文件名 』C:Program FilesMicrosoft SQL ServerMSSQLdatatest_Log LDF』可能有誤

已創建名為』C:Program FilesMicrosoft SQL ServerMSSQLDatatest_log LDF』的新日誌文件

但是 如果您的資料庫文件是從其他計算機上復制過來的 那麼很不幸 也許上述辦法就行不通了 你也許會得到類似下面的錯誤信息

伺服器: 消息 級別 狀態 行

未能打開新資料庫 』test』 CREATE DATABASE 將終止

設備激活錯誤 物理文件名 』d:test_log LDF』 可能有誤

應該怎麼辦呢?下面我們舉例說明恢復辦法

A 我們使用默認方式建立一個供恢復使用的資料庫(如test) 可以在SQL Server Enterprise Manager裡面建立

B 停掉資料庫伺服器

C 將剛才生成的資料庫的日誌文件test_log ldf刪除 用要恢復的資料庫mdf文件覆蓋剛才生成的資料庫數據文件test_data mdf

D 啟動資料庫伺服器 此時會看到資料庫test的狀態為「置疑」 這時候不能對此資料庫進行任何操作

E 設置資料庫允許直接操作系統表 此操作可以在SQL Server Enterprise Manager裡面選擇資料庫伺服器 按右鍵 選擇「屬性」 在「伺服器設置」頁面中將「允許對系統目錄直接修改」一項選中 也可以使用如下語句來實現

use master go sp_configure 』allow updates』 go reconfigure with override go

F 設置test為緊急修復模式

update sysdatabases set status= where dbid=DB_ID(』test』)

此時可以在SQL Server Enterprise Manager裡面看到該資料庫處於「只讀置疑離線緊急模式」可以看到資料庫裡面的表 但是僅僅有系統表

G 下面執行真正的恢復操作 重建資料庫日誌文件

dbcc rebuild_log(』test』 』C:Program FilesMicrosoft SQL ServerMSSQLDatatest_log ldf』)

執行過程中 如果遇到下列提示信息

伺服器: 消息 級別 狀態 行

未能排它地鎖定資料庫以執行該操作

DBCC執行完畢 如果DBCC輸出了錯誤信息 請與系統管理員聯系

說明您的其他程序正在使用該資料庫 如果剛才您在F步驟中使用SQL Server Enterprise Manager打開了test庫的系統表 那麼退出SQL Server Enterprise Manager就可以了

正確執行完成的提示應該類似於

警告 資料庫 』test』的日誌已重建 已失去事務的一致性 應運行DBCC CHECKDB以驗證物理一致性 將必須重置資料庫選項 並且可能需要刪除多餘的日誌文件

DBCC執行完畢 如果DBCC輸出了錯誤信息 請與系統管理員聯系

此時打開在SQL Server Enterprise Manager裡面會看到資料庫的狀態為「只供DBO使用」 此時可以訪問資料庫裡面的用戶表了

H 驗證資料庫一致性(可省略)

dbcc checkdb(』test』)

一般執行結果如下

CHECKDB發現了 個分配錯誤和 個一致性錯誤(在資料庫 』test』 中)

DBCC執行完畢 如果DBCC輸出了錯誤信息 請與系統管理員聯系

I 設置資料庫為正常狀態

sp_dboption 』test』 』dbo use only』 』false』

假如沒有出錯 現在你就可以正常的使用恢復後的資料庫啦

J 最後一步 我們要將步驟E中設置的「允許對系統目錄直接修改」一項恢復 因為平時直接操作系統表是一件比較危險的事情 當然 我們可以在SQL Server Enterprise Manager裡面恢復 也可以使用如下語句完成

lishixin/Article/program/SQLServer/201311/22357

② SQL資料庫如何自動備份和恢復

在SQL Server 2008資料庫中。為了防止數據的丟失我們就需要按時的來備份資料庫了。要是每天都要備份的話,人工備份會很麻煩的,自動備份的話就不需要那麼麻煩了,只要設置好了,資料庫就會自動在你設置的時間段里備份。那麼自動備份要怎麼設置呢。下面為大家講解。
工具/原料

電腦一台
要安裝SQL Server 2008資料庫。
方法/步驟

1
在電腦開始菜單中選擇「SQL Server Management Studio」雙擊。在出現的界面中點擊「連接」按鈕。

2
在出現的「 Microsoft SQL Server Management Studio」界面中選擇「管理」下的「維護計劃」右擊維護計劃,點擊「維護計劃向導」,

3
在出現的「SQL Server維護計劃向導」界面中點擊「下一步」

在出現的界面中把名稱和說明寫上。然後點擊「更改」設頂備份計劃

在出現的「作業計劃屬性」界面中,更改執行時間,也就是多久備份一次。這里該為每天備份。間隔時間更改為「1」更改執行一次時間為0:00:00也就是在每天的0點自動備份數據。

更改好以後,就可以在下面看到「在每天的 0:00:00 執行。將從 2014-5-16 開始使用計劃。」然後點擊「下一步」按鈕

在選擇維護任務界面中選擇要備份的資料庫文件。然後點擊下一步。

在選擇維護任務順序中,可以移動要備份的資料庫文件的順序。然後點擊「下一步」

在定義「備份資料庫完整」界面中,選擇資料庫後面下拉菜單中的資料庫文件。然後點擊「確定」按鈕

在定義「備份資料庫完整」界面里選擇備份路徑。然後點擊「下一步」

在「選擇報告選項」界面中設置好「報告文本文件」的路徑。然後點擊「下一步」

在出現的「完成該向導」界面中會看到設置備份的詳細信息。

這樣資料庫自動備份就成功了。

③ 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的管理器中的策略就很理想;再者對於資料庫內數據比較龐大,恢復起來需要一定的時間的,就不防採用異機備份的策略,可以大大降低因系統崩潰所帶來的損失。
總之,事物總有其兩面性,沒有哪種方法是適用於任何情況的,我們應該在實際工作中多總結、歸納,逐漸摸索出最適合自身系統的一種解決方案,這樣才能使我們的工作順利開展

④ sql server怎麼恢復數據

首先sqlserver自帶備份及還原資料庫功能,您需要首先有備份才能進行數據恢復。步驟如下:

以sqlserver2005為例

1、備份;講一下如何備份:

9、還原成功;然後點擊確定等待完成就好了。

⑤ 教你如何用SQL備份和還原資料庫

資料庫的備份和恢復 一、備份資料庫1、打開SQL企業管理器,在控制台根目錄中依次點開 Microsoft SQL Server2、SQL Server組--雙擊打開你的伺服器--雙擊打開資料庫目錄3、選擇你的資料庫名稱(如論壇資料庫Forum)--然後點上面菜單中的工具--選擇備份資料庫4、備份選項選擇完全備份,目的中的備份到如果原來有路徑和名稱則選中名稱點刪除,然後點添加,如果原來沒有路徑和名稱則直接選擇添加,接著指定路徑和文件名,指定後點確定返回備份窗口,接著點確定進行備份 二、還原資料庫1、打開SQL企業管理器,在控制台根目錄中依次點開 Microsoft SQL Server2、SQL Server組--雙擊打開你的伺服器--點圖標欄的新建資料庫圖標,新建資料庫的名字自行取3、點擊新建好的資料庫名稱--然後點上面菜單中的工具--選擇恢復資料庫4、在彈出來的窗口中的還原選項中選擇從設備--點選擇設備--點添加--然後選擇你的備份文件名--添加後點確定返回,這時候設備欄應該出現您剛才選擇的資料庫備份文件名,備份號默認為1(如果您對同一個文件做過多次備份,可以點擊備份號旁邊的查看內容,在復選框中選擇最新的一次備份後點確定)--然後點擊上方常規旁邊的選項按鈕5、在出現的窗口中選擇在現有資料庫上強制還原,以及在恢復完成狀態中選擇使資料庫可以繼續運行但無法還原其它事務日誌的選項。在窗口的中間部位的將資料庫文件還原為這里要按照你SQL的安裝進行設置(也可以指定自己的目錄),邏輯文件名不需要改動,移至物理文件名要根據你所恢復的機器情況做改動,如您的SQL資料庫裝在D:/Program Files/Microsoft SQL Server/MSSQL/Data ,那麼就按照您恢復機器的目錄進行相關改動改動,並且最後的文件名最好改成您當前的資料庫名(如原來是zw0001.mdf ,現在的資料庫是zw0002 ,就改成zw0002.mdf),日誌和數據文件都要按照這樣的方式做相關的改動(日誌的文件名是 .ldf結尾的),這里的恢復目錄您可以自由設置,前提是該目錄必須存在(如您可以指定 d:/sqldata/zw0002.mdf或者d:/sqldata/zw0002.ldf ),否則恢復將報錯6、修改完成後,點擊下面的確定進行恢復,這時會出現一個進度條,提示恢復的進度,恢復完成後系統會自動提示成功,如中間提示報錯,請記錄下相關的錯誤內容並詢問對SQL操作比較熟悉的人員,一般的錯誤無非是目錄錯誤或者文件名重復或者文件名錯誤或者空間不夠或者資料庫正在使用中的錯誤,資料庫正在使用的錯誤您可以嘗試關閉所有關於SQL窗口然後重新打開進行恢復操作,如果還提示正在使用的錯誤可以將SQL服務停止然後重起看看,至於上述其它的錯誤一般都能按照錯誤內容做相應改動後即可恢復 三、設定每日自動備份資料庫1、打開企業管理器,在控制台根目錄中依次點開

⑥ 如何還原sql資料庫

1、要進行還原資料庫操作我們先需要有一個資料庫,這里直接打開SQL Server Management Studio,然後打開實例,在左側按照下圖中紅色箭頭指示右鍵點擊資料庫,然後點擊 新建資料庫,如下圖:

熱點內容
王者榮耀安卓q區哪個英雄好拿標 發布:2024-11-29 01:56:04 瀏覽:665
網易收件伺服器怎麼填寫 發布:2024-11-29 01:52:15 瀏覽:278
螢石攝像頭激活密碼是多少 發布:2024-11-29 01:51:38 瀏覽:579
iphone如何設置像安卓動態壁紙 發布:2024-11-29 01:37:50 瀏覽:474
電腦如何避過聯網查配置 發布:2024-11-29 01:25:16 瀏覽:972
期貨軟體編程 發布:2024-11-29 01:13:16 瀏覽:834
如何下載加密pdf文件 發布:2024-11-29 01:09:21 瀏覽:326
高通android開發 發布:2024-11-29 01:09:11 瀏覽:693
xp電腦無線網密碼怎麼看密碼 發布:2024-11-29 01:08:30 瀏覽:124
戀愛劇腳本 發布:2024-11-29 00:59:58 瀏覽:575