萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mssql數據庫 >> SQL Server 2008 master與msdb數據庫的備份與恢復

SQL Server 2008 master與msdb數據庫的備份與恢復

   sql server 2005 & 2008 master與msdb數據庫的備份與恢復,master與msdb數據庫的備份與普通數據庫一樣,本文主要描述master與msdb數據庫的恢復的一些個人積累。

  恢復master與msdb數據庫關鍵在於以單用戶模式啟動,其它並沒有太大的區別。

  由於系統數據庫對Sql Server來說尤其重要,為了確保SQL SERVER系統的正常運行,除了日常備份用戶的數據庫之外,我們還需要備份系統數據庫,如對Master,Model,Msdb(TempDB不需備份)進行完整備份

  1、還原Master數據庫

  如果系統配置丟失或Master出現問題,可以進入單用戶模式進行還原;如果出現下列情況,必須重新生成損壞的 master 數據庫:

  A. master 數據庫的當前備份不可用。

  B. 存在 master 數據庫備份,但由於 Microsoft SQL Server 實例無法啟動,因此無法還原該備份。

  1、重新生成 master 數據庫:

  注意:

  在 SQL Server 2005 中已廢止 Rebuildm.exe 程序。若要重新生成 master 數據庫,請使用 setup.exe。

  1、 Start /wait setup.exe /qn INSTANCENAME= REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=

  例:start /wait e:“setup.exe /qn INSTANCENAME=mssqlserver REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=abc123@!@

  注:INSTANCENAME:指定實例名,默認實例則用mssqlserver表示

  REINSTALL:指定引擎

  SAPWD:強密碼

  Setup.exe:指定光盤1中的根目錄下的文件

  /qn 開關用於取消所有安裝程序對話框和錯誤消息。如果指定 /qn 開關,則所有安裝程序消息(包括錯誤消息)都將寫入安裝程序日志文件。有關日志文件的詳細信息,請參閱如何查看 SQL Server 2005 安裝日志文件。

  指定 /qb 開關將顯示基本的安裝程序對話框。還會顯示錯誤消息。

  2、 還原Master備份(在恢復master的備份時要注意:必須在單用戶(single user)模式下進行 ) a.進入單用戶模式的方法:

  1.在命令行模式下輸入sqlservr -c -f -m或者輸入sqlservr -m

  其中:-c 可以縮短啟動時間,SQL Server 不作為Windows NT的服務啟動

  -f 用最小配置啟動SQL Server

  -m 單用戶模式啟動SQL Server

  2.系統默認沒有設置PATH,先進入CMD,進入“C:“Program Files“Microsoft SQL Server“MSSQL.1“MSSQL“Binn”,執行SQLSERVR.EXE –M

  打開SSMS工具,先斷開連接,再新建查詢,執行以下命名還原

  USE master

  GO

  RESTORE DATABASE master

  FROM disk=‘c:“master.bak‘

  GO

  開始實驗了~~~

  MASTER重新生成

  為了模擬MASTER數據庫壞了,我們就刪除MASTER數據庫(要停止SQL SERVER服務才能刪除)在我的電腦,C:“ PROGRAM FILES“MICROSOFT SQL SERVER“MSSQL.1“MSSQL“DATE 中刪除MASTER.MDF

  重新生成MASTER

  1.首先在CMD中輸入

  start /wait setup.exe /qn INSTANCENAME= REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=

  其中的 SETUP.EXE為啟動光盤的路徑,我這裡的是 E:“SETUP.EXE /QN

  我這裡的為默認實例所以其中的用 MSSQLSERVER代替

  最後的為密碼我設密碼為abc123@!@,所以就用abc123@!@代替

  若沒有返回錯誤,我們就可以到我的電腦中C:“ PROGRAM FILES“MICROSOFT SQL SERVER“MSSQL.1“DATE上面又有MASTER.MDF了

  接下來進入目錄

  單用戶模式

  啟動SSMS工具,新建查詢

  輸入命令

  啟動服務(MSSQL SERVER)

  打開SSMS

  連接到數據庫後就可以發現數據庫中的數據又回來了

  以下是我在命令行下搞的命令,我用記事本的方式全部復制下來了,為了不傳附件,我就直接粘貼到下面了

  Microsoft Windows [版本 5.2.3790]

  (C) 版權所有 1985-2003 Microsoft Corp.

  C:“Documents and Settings“Administrator>start /wait e:“setup.exe /qn INSTANCENAME=mssqlserver REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=abc123@!@

  C:“Documents and Settings“Administrator>cd C:“Program Files“Microsoft SQL Server“MSSQL.1“MSSQL“Binn

  C:“Program Files“Microsoft SQL Server“MSSQL.1“MSSQL“Binn>sqlservr.exe -m

  2008-04-18 15:47:46.56 Server Authentication mode is MIXED.

  2008-04-18 15:47:46.59 Server Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86)

  Oct 14 2005 00:33:37

  Copyright (c) 1988-2005 Microsoft Corporation

  Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 1)

  2008-04-18 15:47:46.59 Server (c) 2005 Microsoft Corporation.

  2008-04-18 15:47:46.59 Server All rights reserved.

  2008-04-18 15:47:46.59 Server Server process ID is 3984.

  2008-04-18 15:47:46.59 Server Logging SQL Server messages in file ‘C:“Program Files“Microsoft SQL Server“MSSQL.1“MSSQL“LOG“ERRORLOG‘.

  2008-04-18 15:47:46.59 Server This instance of SQL Server last reported using a process ID of 764 at 2008-4-18 15:46:40 (local) 2008-4-18 7:46:40 (UTC). This is an informational message only; no user action is required.

  2008-04-18 15:47:46.60 Server Registry startup parameters:

  2008-04-18 15:47:46.60 Server -d C:“Program Files“Microsoft SQL Server“MSSQL.1“MSSQL“DATA“master.mdf

  2008-04-18 15:47:46.60 Server -e C:“Program Files“Microsoft SQL Server“MSSQL.1“MSSQL“LOG“ERRORLOG

  2008-04-18 15:47:46.60 Server -l C:“Program Files“Microsoft SQL Server“MSSQL.1“MSSQL“DATA“mastlog.ldf

  2008-04-18 15:47:46.62 Server Command Line Startup Parameters:

  2008-04-18 15:47:46.62 Server -m2008-04-18 15:47:46.64 服務器 SQL Server is starting at normal priority base (=7). This is an informational message only. No user action is required.

  2008-04-18 15:47:46.67 服務器 Detected 1 CPUs. This is an informational message; no user action is required.

  2008-04-18 15:47:46.78 服務器 Using dynamic lock allocation. Initial allocation of 2500 Lock blocks and 5000 Lock Owner blocks per node. This is an informational message only. No user action is required.

  2008-04-18 15:47:46.84 服務器 Attempting to initialize Microsoft Distributed Transaction Coordinator (MS DTC). This is an informational message only. No user action is required.

  2008-04-18 15:47:47.95 服務器 Attempting to recover in-doubt distributed transactions involving Microsoft Distributed Transaction oordinator (MS DTC).

  This is an informational message only. No user action is required.

  2008-04-18 15:47:47.96 服務器 Database Mirroring Transport is disabled in the endpoint configuration.

  2008-04-18 15:47:47.96 spid5s Warning ******************

  2008-04-18 15:47:47.96 spid5s SQL Server started in single-user mode. This an informational message only. No user action is required.

  2008-04-18 15:47:47.99 spid5s Starting up database ‘master‘.

  2008-04-18 15:47:48.17 spid5s Recovery is writing a checkpoint in database ‘master‘ (1). This is an informational message only. No user action is required.

  2008-04-18 15:47:48.28 spid5s SQL Trace ID 1 was started by login "sa".

  2008-04-18 15:47:48.32 spid5s Starting up database ssqlsystemresource‘.

  2008-04-18 15:47:48.76 spid5s Server name is ‘VM01‘. This is an informational message only. No user action is required.

  2008-04-18 15:47:48.78 spid8s Starting up database ‘model‘.

  2008-04-18 15:47:49.20 服務器 A self-generated certificate was successfully loaded for encryption.

  2008-04-18 15:47:49.23 服務器 Server is listening on [ ‘any‘ 1433].

copyright © 萬盛學電腦網 all rights reserved