web-dev-qa-db-ja.com

メンテナンス計画のスケジュール-適切なシーケンスの要求

OlaHallengrenのMaintenanceSolution.sqlスクリプトをインストールしました。

だから私がすぐに使えるのはたくさんの仕事です:

Olla Hallengren SQL Maintenance Jobs

私の質問は:

スクリプトで提供されるジョブに基づいて、どのようなスケジュールを実装する必要がありますか?

SQL-Full Backupは、土曜日の午後11時に開始されます。だから私は次のスケジュールを使うと思いました:

Job                           Schedule
----------------------------- ------------------------
IndexOptimize                 Saturday at 10:00 pm  
Database IntegrityCheck       Saturday at 09:00 pm  
CommandLog Cleanup            Sunday at 03:00 am  
Output File Cleanup           Sunday at 03:15 am  
SP_delte_backuphistory        Sunday at 03:20 am  
SP_purge_Jobhistory           Sunday at 03:25 am  

あなたのアドバイスは何ですか?

すべてのコメントを歓迎します。

1
Steve_Mueller

あなたの目標は、特定のジョブを「チェーン」することであるように見えます。つまり、整合性チェック、インデックスの最適化、バックアップの実行です。

まず-それmayバックアップを取るのは理にかなっていますbeforeチェックとインデックスの最適化。これらの手順で何かがひどくうまくいかなかった場合は、最初に戻って問題を解決しようとすることができます。このDBの差分バックアップを作成する場合は、前に最終の差分バックアップを作成し、後で完全バックアップを作成することをお勧めします。

第二に、連鎖は一般的に合理的であるように思われます。ただし、ジョブを実行するまで、ジョブにかかる時間はわかりません。 DBチェックとインデックスの最適化に1時間以上かかる可能性がある場合は、もっとスペースを空けておきます。これらを重ねることは必ずしも良い考えではありません。

可能な限り緊密な連鎖が望ましい場合は、ジョブステップを単一のジョブに移動し、必要に応じて順序付けます。または、 @ AaronBertrand で提案されているように、最初のジョブのスケジュールと実際のスケジュールのみを設定します。最初のジョブで2番目のジョブを最後のステップとして開始し、2番目のジョブで3番目のジョブを開始します。

2
RDFozz

さて、ここで締めくくる投票があると思います。それは理にかなっています。これは意見に基づく質問です。ここには正しい答えも間違った答えもありません。しかし、賛成票が入る前に、考慮すべきいくつかのことがあります。

  1. ここでの注文に関する厳格なルールはありません。
  2. パージおよび履歴クリーンアップジョブ(パージされたことがない年数の履歴がないシステム上)は、通常、非常に高速です。私は通常、毎週金曜日または土曜日の深夜にそれらをスケジュールします-そしてそれはうまくいきます、ほとんどのシステムでは数秒から一桁の分かかるかもしれません。すべてが終わった後、土曜日または日曜日の午前8時にそれらを行うこともできます。
  3. これらのジョブが実際に問題を引き起こしたり、データベースを破壊したりすることはありません。したがって、それらを心配することなく実行できます。うまくいけば、完全に回復し、ログのバックアップを行っています。
  4. 私が使用する唯一の実際の厳格なルールは次のとおりです。A。)次のバックアップが適切であることがわかるまでバックアップを削除しませんB.)常にチェックサムを確認して使用します(可能な場合は復元をテストします)、C。 )私は毎週checkdbの後に完全バックアップを実行します-したがって、適切なcheckdbがあれば、その直後に適切なバックアップがあります。 D.)前回の良好なcheckdb以降、完全バックアップ、ログバックアップ、およびdiffバックアップを保持しているので、必要なときにいつでも元に戻すことができます(これについては、かなり長い間説明しました-申し訳ありません-ブログ投稿 破損に強い)バックアップ戦略 。)
1
Mike Walsh