如果資料庫遭到刪除或毀損,您可以透過下列任一方式還原:
- 執行完整還原作業
- 建立副本,或將資料庫近乎即時掛接為虛擬應用程式,然後將其遷移回原始位置或新位置。如要掛接及遷移資料庫,請參閱「SQL Server 掛接和遷移」。
還原程序會由精靈引導,並視您還原單一資料庫備份 (例如 Always On 可用性群組 (AG) 的成員) 或 SQL 執行個體中的多個備份而略有不同。
事前準備
執行本節中的程序之前,請確認:
資料庫未處於緊急模式。
等待執行中的工作完成。
Microsoft SQL Server 資料庫還原總覽
還原功能會將原始正式版資料庫資料,替換為所選時間點的備份資料,或是備份保存庫中的備份資料。還原作業會覆寫資料庫,將資料庫還原至備份建立時的狀態,因此目前的所有資料都會遺失。這項操作無法復原。
還原作業通常用於在資料損毀事件後,將資料庫還原至有效狀態。完成還原作業所需的時間取決於資料量。
使用 Microsoft SQL Server 完整復原模式的資料庫會使用單一政策,同時擷取資料庫及其記錄。這類資料庫可透過前滾記錄檔,復原至任何時間點。如果您透過設備管理控制台還原資料庫,並指定「還原並復原」,系統就會還原 SQL Server 資料庫,並在套用記錄後將資料庫上線。
還原 Microsoft SQL Server 資料庫和執行個體時,備份和災難復原服務支援下列常見用途:
執行就地資料庫還原:如果實際工作環境資料庫或執行個體已毀損,但仍處於連線狀態,請執行還原作業。
使用虛擬應用程式 (虛擬應用程式掛接):您可以將毀損的 SQL Server 執行個體或資料庫,掛接至最後一個已知良好的版本,讓使用者和應用程式盡快恢復運作。然後使用「掛接並遷移」在背景遷移資料庫,請參閱「SQL Server 掛接並遷移」。
還原 Microsoft SQL 執行個體和資料庫
這是最簡單且最常見的還原情境。 在本例中,您會從先前的備份還原所選 SQL 資料庫,並還原至原始資料庫伺服器。資料庫必須處於連線狀態,才能進行這類還原作業。如果資料庫未上線,還原作業會在資料庫驗證期間失敗;在這種情況下,請改為複製資料庫。
如要執行這項程序,請按照下列步驟操作:
Microsoft SQL Server 資料庫必須處於連線狀態。如果資料庫未上線,資料庫驗證期間還原作業會失敗。
等待執行中的工作完成。
如要還原 SQL Server 資料庫:
開啟應用程式管理工具,前往「應用程式」頁面。
以滑鼠右鍵按一下要還原的 Microsoft SQL Server 資料庫,然後從下拉式清單中選擇「存取」。「存取」頁面隨即開啟,並在時間軸斜坡檢視畫面中列出擷取的備份。支援還原作業的備份類型包括快照和 OnVault,但前提是必須使用擷取備份的同一部裝置。
如需使用其他設備還原,請改用複製作業。
背景會區分包含 SQL Server 資料庫和交易記錄檔的快照備份,並說明記錄的還原時間範圍
選取備份,然後從作業清單中選取「還原」。 「還原」頁面隨即開啟。
選取「傳統」,即可執行這項還原作業。
如果所選資料庫沒有記錄,「還原」頁面就不會顯示前滾選項。如果 SQL Server 資料庫是透過記錄保護備份範本管理,且備份中包含記錄,您可以:
指定使用「使用者時間」或「主機時間」向前回溯。您可以根據使用者時間或主辦人時間設定日期和時間。使用者時間是相對於目前畫面檢視者的時間。主機時間是相對於要還原資料的系統。
使用日曆工具選取要執行結轉作業的日期。
使用「還原範圍」滑桿,選取所選日期要還原資料庫的特定時間。將滑桿工具完全向左滑動,並選取最早的日期,即可還原 SQL Server 資料庫,而不必向前復原任何記錄。
如要讓資料庫維持還原模式,請取消選取「Restore With Recovery」核取方塊。使用復原功能還原資料庫後,資料庫會恢復上線。上線後就無法再套用記錄。
按一下「提交」。
系統會開啟警告對話方塊,詳閱內容,然後輸入「DATA LOSS」確認。 還原作業會開始。您可以在系統監控器中查看作業狀態,確認還原作業是否成功。
還原 SQL 系統資料庫
備份和災難復原可以探索及備份 Microsoft SQL 系統資料庫,就像 SQL Server 使用者資料庫一樣。
如要還原 SQL 系統資料庫,請先掛接該資料庫的最後一個已知良好版本,然後使用檔案複製作業,將良好的 SQL Server 系統資料庫 .mdf 和 .ldf 檔案複製到來源 SQL 伺服器,該伺服器會代管損毀的 SQL 系統資料庫。
在備份和災難復原服務設備管理控制台中,按一下「App Manager」,然後從下拉式選單中選取「Applications」。
「應用程式」頁面隨即開啟。
選取並掛接一致性群組的最後一個已知良好備份。 請務必取消選取「建立新的虛擬應用程式」。
如有可能,請使用下列查詢範例顯示資料庫的檔案位置:
SELECT name, physical_name AS current_file_location FROM sys.master_files在 SQL 執行個體中,使用 SQL Server 組態管理員或 Services MMC 停止來源 SQL 執行個體:
使用 Windows 檔案總管或其他方式,前往已掛接的 SQL 系統資料庫備份。
複製要還原的資料庫所掛接的 .mdf 和 .ldf 檔案。
使用 Windows 檔案總管或其他方式,前往來源 SQL Server 資料庫:
將 .mdf 和 .ldf 檔案貼到來源 SQL Server 資料庫。
在 SQL 執行個體中,使用 SQL Server 組態管理員或 Services MMC,重新啟動來源 SQL Server 資料庫。
還原至 SQL Server 叢集
如果是 SQL Server 容錯移轉執行個體,資料庫一律會還原至作用中節點。如果是 SQL Server 可用性群組,系統會在所有節點上執行還原作業。
還原一致性群組中的 SQL Server 資料庫
在一致性群組中還原 Microsoft SQL Server 資料庫時,請務必謹慎行事 (請參閱「還原一致性群組」)。還原一致性群組中的 SQL Server 資料庫時,一致性群組中的所有資料庫都會遭到覆寫。
備份和災難復原 Microsoft SQL Server DBA 指南
本頁是系列頁面之一,專門介紹如何使用備份和災難復原服務,保護及還原 Microsoft SQL Server 資料庫。如需更多資訊,請參閱:
- Microsoft SQL Server 資料庫的備份和災難復原
- 為備份和災難復原服務準備 SQL Server 資料庫
- 新增 SQL Server 資料庫主機並探索資料庫
- 為 Microsoft SQL Server 執行個體和資料庫設定備份計畫
- Microsoft SQL Server 執行個體和資料庫的應用程式詳細資料和設定
- 掛接 SQL Server 資料庫
- 將資料庫掛接到 SQL Always On 可用性群組
- 管理有效掛接點
- 遷移 SQL Server 資料庫
- 複製 SQL Server 資料庫
- 復原 SQL Server 備份