私はDBAではありませんが、DBAの帽子をかぶってSQL Serverインスタンスのメンテナンスプランをセットアップする必要があります。
しばらくの間、SSISの夜間プロセスを実行してSQLタスクを実行してくださいバックアップを実行します-基本的にmaster.dbo.xp_create_subdir
を実行して宛先フォルダが存在し、次にBACKUP DATABASE [DbName] TO DISK = 'G:\Backups\DbName\DbName.bak' WITH INIT
。
そのタスクが失敗すると、残りのプロセスは中止され、通知が届きます。翌朝、トランザクションログのドライブがいっぱいになり、手動で切り捨てて先に進みます。 ..ストーリーが繰り返され、トランザクションログが再び使用可能なディスク領域を超えてしまうまで。
「手動切り捨て」スクリプトは次のようになります。
use Staging; alter database Staging set recovery simple alter database Staging set recovery full dbcc shrinkfile ('Staging_log', 0, truncateonly); go
だから私はこれに飽きてきており、代わりに適切にやってみようし、手順 here を実行して実際の保守計画:
ことは、私はこれをこれまでにしたことがないので、いくつか質問があります:
G:\Backups
のサブフォルダーにある「古い」.bakファイルと.trnファイルをそれぞれ削除します。それは理にかなっていますか?これが1つの投稿に対して多すぎる質問の場合は申し訳ありません。必要に応じて、編集して複数の質問をします。それらはすべて密接に関連していると思います。
夜間にのみSSISが書き込みを行い、昼間はすべて読み取りです-毎日の回復のみが必要です。
ビジネスニーズに基づいて復旧モデルを選択する必要があります。
上記の回答に基づいて、慎重に データベース復旧モデル を選択する必要があります。
簡単に言えば(一括ログ復旧モデルについては説明していません)、
ログの切り捨てはトランザクションログファイルのサイズの物理的な縮小ではないことを思い出してくださいこれは、トランザクションログファイルの非アクティブな部分がreusableとしてマークされていることを意味します。
したがって、トランザクションログファイル(およびデータファイル)を適切にプリサイズする必要があります。ログファイルを拡張すると、自動拡張イベントが開始されます(データベースが最後の手段として自動拡張に設定されている場合)。私の答えを確認してください- 自動拡張-使用率?
メンテナンスプランを破棄する を実装することを強くお勧めします[スマートメンテナンスソリューション-これは簡単で柔軟性があり、ベストプラクティスに従います]- 5 。 -Olaのバックアップソリューション (および インデックスメンテナンスソリューション も同様)
あなたの質問に答えましょう:
このようなトランザクションログをバックアップすると、自動的に切り捨てられますか、それとも他に何かする必要がありますか?
バックアップを追加したり、期限切れに設定したりしないでください。彼らは大きな混乱を引き起こします。 INIT
を使用し、日時スタンプを使用して個別のログバックアップを作成します。メンテナンスが簡単。 Olaのバックアップソリューションを使用してください。このソリューションは、古いバックアップを削除するのにも柔軟です。
データとトランザクションログのバックアップを同時に実行しても大丈夫ですか?そうでない場合、これを行う適切な方法は何ですか?
完全バックアップは、Tログバックアップには影響しません。完全バックアップには、必要なトランザクションログのみが含まれているため、復元の際に、データベースは、完全バックアップのデータ読み取り部分が完了した時間とトランザクションの一貫性を保つことができます。チェック- フルバックアップに含まれるトランザクションログの量?
また、フルバックアップ中のログバックアップでは、トランザクションログは切り捨てられません。ログバックアップ(の組み合わせ)(s)後完全バックアップが終了すると、ログが切り捨てられます。
バックアップファイルは、サーバー上のすべてのファイルを取得して別の場所に保存する別のプロセスによって夜間に取得されます。2日後にバックアップセットを期限切れにするのは良い考えでしょうか。それらを完全に期限切れにする必要がありますか?
クリーンアップタスクでは、G:\ Backupsのサブフォルダーにある「古い」.bakファイルと.trnファイルをそれぞれ削除します。それは理にかなっていますか? SSISでこれを行う方が良いので、バックアップが失敗した場合や失敗した場合にETLを失敗させることができますか?それとも私のETLプロセスは気にすべきですか?
上記の両方について、Olaのバックアップ保守ソリューションを使用してください。古いファイルを削除します。