sqlserver 2005 masterとmsdbデータベースのバックアップリカバリプロセス

10783 ワード

システムデータベースはSql Serverにとって特に重要であるため、SQL SERVERシステムの正常な運行を確保するために、日常的にユーザーのデータベースをバックアップする以外に、Master、Model、Msdb(TempDBはバックアップを必要としない)に対して完全なバックアップを行うシステムデータベースをバックアップする必要がある.
1.Masterデータベースの復元
システム構成が失われたり、Masterに問題が発生したりした場合は、シングルユーザモードでリストアできます.次の場合は、破損したmasterデータベースを再生成する必要があります.A.masterデータベースの現在のバックアップは使用できません.B.マスターデータベースバックアップは存在するが、Microsoft SQL Serverインスタンスが起動できないため、バックアップを復元できない.1、masterデータベースを再構築する:
注意:
SQL Server 2005でRebuildmが廃止されました.exeプログラム.マスターデータベースを再生成するには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=abc 123@!@注:INSTANCENAME:インスタンス名を指定し、デフォルトインスタンスはmssqlserverでREINSTALLを表します:エンジンSAPWDを指定します:強力なパスワードSetup.exe:ディスク1のルートディレクトリの下にあるファイル/qnスイッチを指定して、すべてのインストーラダイアログボックスとエラーメッセージをキャンセルします./qnスイッチを指定すると、すべてのインストーラメッセージ(エラーメッセージを含む)は、インストーラログファイルに書き込まれます.ログファイルの詳細については、SQL Server 2005インストールログファイルの表示方法を参照してください.指定/qbスイッチには、基本的なインストーラダイアログボックスが表示されます.エラーメッセージも表示されます.
2、マスターバックアップを復元する(マスターのバックアップを回復する時に注意する:シングルユーザー(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 �CM
SSMSツールを開き、接続を切断してからクエリーを新規作成します.USE masterGORESTORE DATABASE masterFROM disk='c:『master.bak'GO実験開始~~~MASTERがアナログMASTERデータベースに生まれ変わって壊れてしまったので、MASTERデータベースを削除します(SQL SERVERサービスを停止しないと削除できません)私のパソコンで、C:『PROGRAM FILES』MICROSOFT SQL SERVER"MSSQL.1"「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を最後のパスワードの代わりに使います.abc 123@!@とパスワードを設定します.だからabc 123@!@を使います.戻りエラーがなければ、私のパソコンに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].
2008-04-18 15:47:49.24 Server local connection provider is ready to accept connection on [ ““.“pipe“SQLLocal“MSSQLSERVER ].
2008-04-18 15:47:49.24 Server local connection provider is ready to accept connection on [ ““.“pipe“sql“query ].
2008-04-18 15:47:49.28 Server is listening on [ 127.0.0.1 1434].
2008-04-18 15:47:49.28 Dedicated admin connection support was established for listening locally on port 1434.
2008-04-18 15:47:49.29 The SQL Network Interface library could not register the Service Principal Name (SPN) for the SQL Server service. Error: 0x54b. Failure to register an SPN may cause integrated authentication to fall back to NTLM instead of Kerberos. This is an informational message. Further action is only required if Kerberos authentication is required by authentication policies.
2008-04-18 15:47:49.31 SQL Server is now ready for client connections. This is an informational message; no user action is required.
2008-04-18 15:47:49.40 spid5s Starting up database ‘msdb‘.
2008-04-18 15:47:49.68 spid8s Clearing tempdb database.
2008-04-18 15:47:49.93 spid5s Recovery of any in-doubt distributed transactions involving Microsoft Distributed Transaction Coordinator (MS DTC) has completed. This is an informational message only. No user action is required.
2008-04-18 15:47:50.57 spid8s Starting up database ‘tempdb‘.
2008-04-18 15:47:50.76 spid5s Recovery is complete. This is an informational message only. No user action is required.
2008-04-18 15:56:22.34 spid51 SQL Trace was stopped due to server shutdown. Trace ID = ‘1‘. This is an informational message only; no user action is required.
2008-04-18 15:56:22.40 The SQL Network Interface library could not deregister the Service Principal Name (SPN) for the SQL Server service. Error: 0x54b. Administrator should deregister this SPN manually to avoid client authentication errors.
C:“Program Files“Microsoft SQL Server“MSSQL.1“MSSQL“Binn>

SSMSツールを開き、接続を切断してからクエリーを新規作成し、以下の名前付きリストアを実行します.
 
  
USE master
GO
RESTORE DATABASE master
FROM disk=‘C:“Program Files“Microsoft SQL Server“MSSQL.1 “MSSQL“Backup“master.bak‘
GO

データベースに表示されるメッセージは次のとおりです.
データベース'master',ファイル'master'(ファイル1上)の376ページが処理されました.データベース'master',ファイル'mastlog'(ファイル1上)に6ページ処理されました.masterデータベースのリストアに成功しました.SQLサーバーを閉じています.SQL Serverはこのプロセスを終了しています.マスターデータベースの復元に成功し、サービスを開始してからSSMSに入るとマスターデータベースが見えます.
マスター・データベースの復元
方法一:(操作手順)
1 MSSQLSERVERサービスを停止する2コマンドライン入力:
 
  
net start "SQL Server (MSSQLSERVER)" /m

通常は次の情報が表示されます.
 
  
SQL Server (MSSQLSERVER) ..
SQL Server (MSSQLSERVER) 。

3コマンドライン入力:
 
  
sqlcmd
1>USE master;
2>GO

データベースコンテキストが「master」に変更されました.
 
  
1>RESTORE DATABASE master FROM DISK=' ';
2>GO

リカバリに成功した場合は、次の情報が表示されます.
データベース'master'、ファイル'master'(ファイル1上)は376ページ処理されています.データベース'master',ファイル'mastlog'(ファイル1上)の3ページが処理されました.masterデータベースのリストアに成功しました.SQLサーバーを閉じています.SQL Serverはこのプロセスを終了しています.[/code]
失敗すると次のように表示されます.
 
  
3154, 16, 4, HC, 1
'master' 。
3013, 16, 1, HC, 1
RESTORE DATABASE 。

この場合[/code]リカバリ文の後に「WITH REPLACE」を付ける必要があります.次のようになります.
1>RESTORE DATABASEマスターFROM DISK=データベースバックアップファイルパス'WITH REPLACE;2>GO[/code]
4 MSSQLSERVERサービスの再起動
方法2:(方法と差が少ない)
1「SQL Server構成マネージャ」を開き、「SQL Serverサービス」をクリックします2右ペインで、「SQL Server()」を右クリックし、「プロパティ」3をクリックして「詳細」タブの「起動パラメータ」ボックスにセミコロン「;区切りのパラメータ.(たとえば、シングルユーザモードで起動するには、既存の起動オプションの前に「-m;」を挿入します.[OK]をクリックすると、警告ボックスがポップアップされます.[OK]をクリックします.4データベースエンジン5を再起動します(同じ方法では、手順3)6マスターデータベースを正常に復元した後、通常のマルチユーザモードでサーバインスタンスを再起動するには、先に入力した「-m;」を[開始パラメータ]ボックスから削除する必要があります.SQL Serverサービスを再起動します
msdbデータベースのリカバリ
msdbデータベースに多く格納されているのは、ジョブ、スケジューリング、オペレータ、警告などのSQL Agentの内容であり、SQL Server Integration Service(SSIS)関連情報も格納されています.そのリカバリ・プロシージャは、通常のデータベース・リカバリ・プロシージャと大きく異なり、単一ユーザー・モードの起動下でリカバリする必要がある点が異なります.
1 SQL Server Management Studioを開き、関連するデータベース・サーバに接続する2 msdbデータベースを右クリックし、「プロパティ」をクリックしてデータベース・プロパティ・ウィンドウを開き、「オプション」をクリックし、右側の「ステータス」/「アクセス制限」で「SINGLE_USER」を指定し、「OK」をクリックしてシングル・ユーザー・モードで起動します.このときmsdbは「msdb(シングル・ユーザー)」3と表示されます(通常のデータベースと同じです...)4復旧後、「アクセス制限」を以前の状態「MULTI_USER」に変更することを忘れずに