サードパーティのサーバーバックアップツールが24時間ごとに実行され、すべてをバックアップします(ベアメタルリストアの準備としてファイルとデータベース)。多くの調査の結果、ツールがcopy_only
バックアップ。これにより、システムデータベースと私たちの両方のログチェーンが破壊されます。
(システムデータベースをバックアップする必要があるかどうかを調査していますが、SQL Serverに関する一般的なデータ(ユーザー、エージェントジョブなど)が保持しているため、コンセンサスは一般に「はい」です。これについては、内容ですが、私が説明する状況により、復元後にこれらが見つからなかった場合はどうなりますか)。
この犯罪を阻止するために、データベースバックアップを実行するツールを無効にしたので、ファイルバックアップのみを実行します(MDF/LDFファイルを除く)。その後、1時間ごとにバックアップを実行するようにSQLエージェントをスケジュールし、それをプライベートクラウドに送信しました。
完全なサーバー障害が発生し、ベアメタルバックアップが必要な場合、SQLがバックアップを開始したとき、データベースはツールによってバックアップ/復元されなかったため、そこにはないはずです(ただし、データベースは安全ですが)バックアップ済み)。
この時点で実際に何が起こりますか? SQL Serverはシステムデータベースを再作成しますか?または、起動を拒否して問題が発生しますか?
番号。
システムデータベースを復元する手順は、次のMicrosoftの記事で説明されています。
参照:システムデータベースの再構築 ( SQL Server 2012)
システムデータベースを再構築します。
セットアップ/ QUIET/ACTION = REBUILDDATABASE/INSTANCENAME = InstanceName/SQLSYSADMINACCOUNTS = accounts [/ SAPWD = StrongPassword] [/ SQLCOLLATION = CollationName]関連情報をインスタンスの値に置き換えます。
セットアップサマリファイルを参照して、インストールが成功したことを確認します。
C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap\Logs
システムデータベースの最新のバックアップを復元します:master
、msdb
、(model
):
master
データベースを復元する場合、SQL ServerインスタンスをDOSプロンプトから-m
パラメータ。msdb
データベースを復元するときに、SQL Serverインスタンスをトレースフラグ3608で起動します。
SQL Serverが自動的に起動してマスターデータベース以外のデータベースを回復するのを防ぎます。データベースは、アクセスされると開始およびリカバリーされます。スナップショットの分離やコミットされたスナップショットの読み取りなど、一部の機能が動作しない場合があります。システムデータベースの移動とユーザーデータベースの移動に使用します。通常の運用では使用しないでください。
ressource
データベースを再構築します。
Userデータベースを復元する
重要なお知らせ
復元を実行したことがない場合、バックアップ(手順)が機能するかどうかはわかりません。テストしてもう一度テストします。
はい、常にシステムデータベースをバックアップする必要があります。これは、すべての本番サーバーが文書化され、テストされている必要がある災害復旧手順の重要な部分です。
とはいえ、システムデータベースから復元するのではなく、システムデータベースから必要なオブジェクトをスクリプトで削除し、目的の場所でスクリプトを実行する方が、少し苦痛を感じる人もいます。
最後に答えが見つかりました ここ 、より良いものがあるかもしれませんが、これは私が調査を続けている間に行われます...
SQLはデータベースを自動的に再作成しません。以下は、それらを再作成するための1つのプロセスです。
マスターデータベースが使用できない場合は、次の手順を使用してマスターデータベースを再構築します。
SQL Serverがインストールされているディレクトリに移動します。通常は
C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL
。
注:2012年のインストールでは、このディレクトリは実際にはC:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Binn\Templates\master.mdf
テンプレートデータフォルダーを開き、元のインストール中に自動的に作成されたシステムデータベースのコピーがあることを確認します。不足しているファイルをコピーして、Dataディレクトリ(
C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data
)。
注:私のインストールでは、これはC:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\master.mdf
注:SQLのデフォルトフィルターが追加されていないことを確認してください。これらのフィルターにより、必要なファイルが除外される可能性があります。デフォルトのSQLフィルターの詳細については、Microsoft SQL Server、コンテンツ、フィルター、および正規表現-ベストプラクティスを参照してください。
コマンドプロンプトから、Services.mscを実行します。[サービス]ウィンドウで、SQL Serverインスタンスを選択し、Startを選択します。