男人插曲女人身体视频,中文字幕日韩一区二区三区不卡,中国gay男男gaygay视频,一本色道婷婷久久欧美,中文字幕永久视频在线看

如何從 Bak 文件中恢復 SQL 數(shù)據(jù)庫?

成功備份SQL Server后,您將獲得一個 bak 文件,可用于通過 SSMS、Transact-SQL、命令行等方式從備份恢復sql數(shù)據(jù)庫。

在這篇文章中,我將介紹這些常用的方法,以及一種從 Bak 文件中恢復 SQL 數(shù)據(jù)庫的簡單替代方法。繼續(xù)閱讀并選擇您喜歡的方式。

“注意”:以下所有方法僅支持將數(shù)據(jù)庫從低版本還原到相同或更高版本,例如從SQL Server2012 到 2016。如果要將數(shù)據(jù)庫遷移到更低版本,請參考這里指導.

方法1. 使用SSMS工具恢復

與備份一樣,SSMS 還包括一個還原向?qū)?,可直觀地指導您完成整個過程。要使用它,請連接到您要將數(shù)據(jù)庫恢復到的實例。

1. 右鍵單擊??數(shù)據(jù)庫并在菜單中選擇恢復數(shù)據(jù)庫...。

恢復數(shù)據(jù)庫

2. 在彈出的窗口中,選擇“Source”作為Device,然后點擊...圖標“添加”bak文件。如果找不到,請定位到它的保存路徑并輸入它的全名(包括.bak)來指定它。

從設備恢復

3.如果沒有問題,備份信息將顯示在Restore Database窗口中,然后您可以單擊“確定”從bak文件中恢復SQL數(shù)據(jù)庫。

恢復成功

備注:?...
如果由于“操作系統(tǒng)返回錯誤'5(訪問被拒絕)'...”導致恢復失敗,請切換到“文件”選項卡,選中“將所有文件重新定位” “到文件夾”并重試。
如果你找到你的SQL數(shù)據(jù)庫卡在恢復中狀態(tài)d的原因可能是你沒有正確停止恢復過程,你沒有足夠的磁盤空間,其他人正在使用這個數(shù)據(jù)庫,或者用戶在使用后沒有關閉查詢窗口等。其中,最常見的原因是您錯誤地使用了 No Recovery 選項來還原數(shù)據(jù)庫。
如果目標實例不包含您要恢復的數(shù)據(jù)庫,則會自動創(chuàng)建一個新數(shù)據(jù)庫(同名)以接收 bak 文件中的所有數(shù)據(jù)。所以“請不要創(chuàng)建一個空數(shù)據(jù)庫并將其命名為目標”,否則您將收到錯誤 3154 說“備份集包含現(xiàn)有數(shù)據(jù)庫以外的數(shù)據(jù)庫的備份”。

方法 2. 使用 T-SQL 語句從 Bak 文件中恢復 SQL 數(shù)據(jù)庫

除了按照向?qū)нM行操作外,您還可以使用查詢在SQL Server中恢復數(shù)據(jù)庫。只要您了解 T-SQL 語句,這實際上是一種更簡單的從bak文件命令行恢復sql數(shù)據(jù)庫的方法。

1. 單擊“新建查詢”打開 SQLQuery 窗口。在其中輸入恢復命令:

RESTORE DATABASE databasename FROM DISK = 'filepath\filename.bak'

例如,如果我想從 D:\Backup 中的完整備份“example.bak”恢復 SQL數(shù)據(jù)庫“example”,那么命令將是:

從RESTORE DATABASE example FROM DISK = 'D:\Backup\example.bak'

2. 點擊“執(zhí)行”按鈕運行命令,您將在下面的“消息”中看到備份狀態(tài)。

t-sql 恢復完整備份

如何從差異備份中恢復數(shù)據(jù)庫?

要從差異備份中恢復,您需要提前用 WITH NORECOVERY 恢復上一次完整備份,因此命令將如下所示:

RESTORE DATABASE databasename FROM DISK = 'filepath\filename.bak' WITH NORECOVERY
GO
RESTORE DATABASE databasename FROM DISK = 'filepath\filename.bak' WITH RECOVERY
GO

“注意:”第一個bak文件應該是完整備份文件,第二個應該是差異備份文件。

t-sql 從差異備份還原

數(shù)據(jù)庫的日志尾部沒有備份?

在還原過程中,您可能會收到一條錯誤消息“數(shù)據(jù)庫的日志尾部尚未備份。如果日志包含您不想丟失的工作,請使用 BACKUP LOG WITH NORECOVERY 備份日志。使用 RESTORE 語句的 WITH REPLACE 或 WITH STOPAT 子句來覆蓋日志的內(nèi)容”。

這是因為您嘗試還原的備份文件比目標數(shù)據(jù)庫舊。要解決它,您可以按照消息中提到的提示進行操作:

1. 事先用 WITH NORECOVERY 備份事務日志,然后再次嘗試恢復 bak 文件。

BACKUP LOG databasename TO DISK = 'filepath\filename.trn' WITH NORECOVERY

2. 使用 WITH REPLACE 或 WITH STOPAT 子句恢復數(shù)據(jù)庫。

RESTORE DATABASE databasename FROM DISK = 'filepath\filename.bak' WITH REPLACE

或者,您可以使用命令行恢復 SQL 數(shù)據(jù)庫,而無需啟動 SSMS - 這需要 SQLCMD,它在 2014 年及更低版本中隨SQL Server一起提供。如果您正在運行更高版本,請下載它這里.

在上一篇文章中,我已經(jīng)解釋了如何使用命令行備份SQL Server數(shù)據(jù)庫,您可以點擊鏈接以獲取更多詳細信息。這里我將重點介紹如何從 Bak 文件中恢復 SQL 數(shù)據(jù)庫。

1、按Win+R,在輸入框中輸入“cmd”。單擊“確定”以打開命令提示符。

2. 然后,將此命令與您自己的服務器名稱和文件路徑一起使用:

SqlCmd -E -S servername -Q “從磁盤恢復數(shù)據(jù)庫數(shù)據(jù)庫名='filepath\filename.bak'”

就我而言,它應該是:

SqlCmd -E -S .\MSSQLSERVER_01 -Q “RESTORE DATABASE databasename FROM DISK='D:\Backup\example.bak'”

cmd 從完整備份恢復

如果要使用命令行恢復差異備份,可以先用 WITH NORECOVERY 恢復完整備份,再用 WITH RECOVERY 恢復差異備份:

SqlCmd -E -S .\MSSQLSERVER_01 -Q “RESTORE DATABASE databasename FROM DISK='filepath\filename.bak' WITH NORECOVERY”
SqlCmd -E -S .\MSSQLSERVER_01 -Q “RESTORE DATABASE databasename FROM DISK='filepath\filename.bak ' 與恢復“

“注意:”第一個bak文件應該是完整備份文件,第二個應該是差異備份文件。

cmd 從差異備份還原

與上一種方法類似,如果遇到“數(shù)據(jù)庫的日志尾部沒有備份”錯誤,可以提前 BACKUP LOG WITH NORECOVERY:

SqlCmd -E -S 服務器名 -Q “備份日志數(shù)據(jù)庫名到磁盤='filepath\filename.trn' WITH NORECOVERY”

或者用 REPLACE 或 WITH STOPAT 恢復數(shù)據(jù)庫:

SqlCmd -E -S .\MSSQLSERVER_01 -Q “RESTORE DATABASE databasename FROM DISK='filepath\filename.bak' WITH REPLACE”

從Bak 文件中恢復 SQL 數(shù)據(jù)庫的優(yōu)點主要是靈活性。例如,您可以備份 SQL數(shù)據(jù)庫并恢復到另一臺服務器. 但上述方法要么比較繁瑣,要么需要一定的 SQL 知識。作為補充,我想介紹一下傲梅企業(yè)備份網(wǎng)絡版,它可以在所有聯(lián)網(wǎng)的Windows PC或服務器之間集中備份和恢復SQL Server數(shù)據(jù)庫。

此軟件適用于 Windows 10/8.1/8/7/Vista/XP、Windows Server/2003/2008 (R2)/2012 (R2)/2016、Windows SBS 2003/2008/2011、Windows Home Server 2011 (32/64 -少量)。

其SQL Server備份功能支持SQL Server2005 至 2019,使您能夠一次備份或恢復多個數(shù)據(jù)庫。整個操作通過簡單的點擊完成,無需專業(yè)知識。

這是一個180天的免費試用期:

? 如何備份SQL Server數(shù)據(jù)庫:

1.正確安裝軟件并獲得對您要管理的客戶端計算機的控制權(quán)(當然,您可以控制自己的機器)。

請求控制

然后在Home選項卡中選擇SQL Server 備份。

sql服務器備份

2.在步驟1中,單擊“+添加計算機”以檢測您控制的計算機(帶有SQL數(shù)據(jù)庫),然后選擇一臺進行備份。

添加計算機

3.在步驟2中,點擊“+添加”,檢測計算機上的所有實例,并選擇一個或多個數(shù)據(jù)庫進行備份。您甚至可以選擇整個實例。

添加數(shù)據(jù)庫

4. 在步驟 3. 單擊“添加存儲”以指定共享或 NAS 設備作為存儲端。然后“開始備份”

選擇目標份額

“設置:” 如有必要,啟用電子郵件通知。
“計劃:” 創(chuàng)建計劃以運行備份一次/每天/每周/每月。“完全備份和差異備份在高級”選項卡中也是可選的。

? 如何從備份中恢復 SQL數(shù)據(jù)庫:

1. 創(chuàng)建備份任務后,它將顯示在“任務”選項卡中。找到你想要的,點擊右上角的“高級”,然后選擇“恢復”。

從SQL Server備份恢復

2. 選擇您要恢復的計算機及其數(shù)據(jù)庫。如果您已多次備份它們(完整或差異),您還可以在右上角選擇要恢復的特定備份。

選擇數(shù)據(jù)庫

3. 您可以將這些數(shù)據(jù)庫恢復到原始位置或新位置。使用第二個選項,您可以直接將數(shù)據(jù)庫還原到另一個 SQL Server。然后,單擊“開始還原”以執(zhí)行它。

恢復到原始位置或新位置

Overwrite the existing database (s) :如果勾選此選項,備份的數(shù)據(jù)庫將覆蓋同名的目標數(shù)據(jù)庫。如果不選中它,則在還原過程中將省略具有相同名稱的目標數(shù)據(jù)庫。

本文提供了 3 種從Bak 文件中恢復 SQL 數(shù)據(jù)庫的方法。其實,您也可以使用有效的第三方軟件——傲梅企業(yè)備份網(wǎng)絡版版,更直觀地管理SQL Server備份和恢復。

它適用于局域網(wǎng)內(nèi)的所有 PC 和服務器。而且它支持的數(shù)據(jù)類型不僅是SQL數(shù)據(jù)庫,還包括計算機文件、操作系統(tǒng)、分區(qū)和磁盤。