SQL Serverは古いエラーログファイルを削除しますか?


12

私はsp_cycle_errorlogを実行することで現在のエラーログを簡単に循環できることを知っていますが、SQL Serverが古い/アーカイブされたエラーログファイルを削除するのではないかと思っています。これに対する答えがどこにも見つからないようです...

回答:


19

SQL Server Management StudioObject Explorer> Managementあなたは右をクリックすると、設定があるSQL Server Logsと選択しますConfigure。保持するログファイルの数を指定できます。その数に達すると、古いものの削除が開始されます。

ここに画像の説明を入力してください


8

SQL Serverを7回再起動します。まだ7つのERRORLOG*ファイルしかありません(バージョンによって異なります)。これは、現在のログファイルと最新の6つのログファイルです。

注:イベントでは、7を別のものに変更する必要がある場合があります SQL Serverが保持するエラーログの数を変更はます。最大値は99だと思います。しかし、現在の設定が何であれ、最終的には古いファイルをリサイクルしてパージします。

私はこれをテストし、あなたが言うボックスのチェックを外せば:

errorリサイクルされる前にエラーログファイルの数を制限する

...これは(少なくとも私には)すべてのログファイルを保持することを意味しますが現在のエラーログファイルと6つのバックアップのみを保持します@RLFが指摘したレジストリキーを変更した場合、レジストリキーの設定は(ボックスをオフにしていないかのように)オーバーライドしますが、バックアップエラーログファイルの数は6から6に制限されます99。

簡単な答えは次のとおりです。はい、すべての場合において、SQL Serverは最終的に古いエラーログファイルを削除することになります。


7

SQL Serverは、正しく構成されている限り、エラーログを自動的にリサイクルします。

http://msdn.microsoft.com/en-us/library/ms177285.aspxを参照してください。以下の重要なポイントをコピーしました。

オブジェクトエクスプローラーで、SQL Serverのインスタンス、[管理]の順に展開し、[SQL Serverログ]を右クリックして、[構成]をクリックします。

[SQL Serverエラーログの構成]ダイアログボックスで、次のオプションから選択します。

  • エラーログファイルの数を制限してからリサイクルします

    • チェックして、作成されるエラーログの数を制限してから、リサイクルしてください。SQL Serverのインスタンスが起動されるたびに、新しいエラーログが作成されます。SQL Serverは、このオプションをオンにし、以下で異なる最大数のエラーログファイルを指定しない限り、前の6つのログのバックアップを保持します。
  • エラーログファイルの最大数

    • リサイクルされる前に作成されるエラーログファイルの最大数を指定します。デフォルトは6です。これは、SQL Serverがリサイクルする前に保持する以前のバックアップログの数です。

2

はい、保持するエラーログの数の設定があります。

次のレジストリキーにあります。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\NumErrorLogs

このキーを追加する必要がある場合があります。


1
MSSQLServer名前付きインスタンスの場合、インスタンスID で最初のインスタンスを置き換える必要があることに注意してください(たとえばMSSQL12.SQL2014、私の名前付きインスタンス2014の場合SQL2014)。
アーロンバートランド
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.