SQL Server masterデータベースの復元
自分で作成したデータベースの復元は行ったことがあるが、masterデータベースの復元まではやったことが無かったので、忘却防止のために記録を残しておきます。
なお、今回はSQL Server 2016 Enterpriseを基に作成してます。
masterだけでなく、modelやmsdbも同様に復元できます。
前提条件
・すべてのデータベースのバックアップを取得しておく。できれば毎日。
・バックアップファイルと稼働中のSQL Serverのバージョンに差がある場合はリストア時に失敗するので、WindowsUpdateでバージョンを合わせる
・復元先にバックアップファイルを設置しておく。
復元手順
1.「SQL Server 2016 構成マネージャー」を起動する。
2.「SQL Serverのサービス」から『SQL SERVER(MSSQLSERVER)』のプロパティを開く。
3.「起動時のパラメーター」タブにて「起動時のパラメーターの指定」へ『-m』を追加。
4.「SQL SERVER(MSSQLSERVER)」を再起動。「起動時のパラメーターの指定」へ『-m』を追加したことにより、SQL Serverがシングルユーザーモードで起動する。
5.「SQL SERVER エージェント(MSSQLSERVER)」を停止
6.コマンドプロンプト(管理者)を起動
7.以下のmasterのデータベース復元コマンドを実行
・masterのデータベースの復元コマンド sqlcmd -E -S(ホスト名) 1>RESTORE DATABASE master FROM DISK = 'バックアップファイル' WITH REPLACE 2>go
8.自動で『SQL SERVER(MSSQLSERVER)』が停止される
9.「SQL Serverのサービス」から『SQL SERVER(MSSQLSERVER)』のプロパティを開く
10.「起動時のパラメーター」タブにて「既存のパラメーター」から『-m』を削除し、「SQL SERVER(MSSQLSERVER)」を起動
11.コマンドプロンプト(管理者)を起動
12.以下のmodelのデータベース復元コマンドを実行
・modelのデータベースの復元コマンド sqlcmd -E -S(ホスト名) 1>RESTORE DATABASE model FROM DISK = 'バックアップファイル' WITH REPLACE 2>go
13.続いて、msdbのデータベース復元コマンドを実行
・msdbのデータベースの復元コマンド 1>RESTORE DATABASE msdb FROM DISK = 'バックアップファイル' WITH REPLACE 2>go
14.必要に応じて、コマンドプロンプトをexitにて抜ける
15.「SQL Server エージェント(MSSQLSERVER)」を起動
16.「SQL Server Management Studio」を起動し、正常にデータがリストアされているか確認。
ディスカッション
コメント一覧
まだ、コメントがありません