web-dev-qa-db-ja.com

SQL Serverの成長イベントと縮小イベントの履歴

SQL Server 2014の最後の週/月の成長と縮小のイベントの完全な履歴を確認する方法はありますか? (サポートする新しいインスタンス。チケットシステムから、「ログドライブがいっぱいです」という以前の履歴があるため、再度発生する前に根本原因を掘り下げたいと考えています。)

これは役に立ちました: Identify File Growth Events 。以下のクエリを思いつきましたが、「手動」のログ縮小イベントは表示されず、「自動」イベントのみが表示されます。私はこれを間違った方法で行っていますか?過去の情報を探す他の場所はありますか?

select
    te.name as event_name,
    tr.DatabaseName,
    tr.FileName,
    tr.IntegerData,
    tr.IntegerData2,
    tr.LoginName,
    tr.StartTime,
    tr.EndTime
--select * 
from 
sys.fn_trace_gettable(convert(nvarchar(255),(select value from sys.fn_trace_getinfo(0) where property=2)), 0) tr
inner join sys.trace_events te on tr.EventClass = te.trace_event_id
where 
tr.EventClass in (93, 95) --can't identify any other EventClass to add here
order by 
EndTime desc;
7
Razvan Zoitanu

SQL Server 2014の最後の週/月の成長と縮小のイベントの完全な履歴を確認する方法はありますか

はい、方法があります、またはここで説明されているように、デフォルトのトレースから収集されたデータを保存するさまざまな方法を言う必要があります デフォルトのトレースでの情報の収集

  1. デフォルトのトレースファイルをクエリして、集計値を保存できます
  2. デフォルトトレースの定義を取得して、SQL Serverに組み込まれている管理データウェアハウスで使用できるコレクションセットを作成できます。
  3. デフォルトのトレースの定義を取得し、別のサーバーからリモートトレースを作成して、データをデータベーステーブルに保存できます。
  4. Robocopyスクリプトを使用して、サーバーから別のフォルダーまたはリモートマシンにトレースファイルをコピーすることができます。これにより、ファイルがディスクに長時間残り、分析できるようになります。

以下のクエリを思いつきましたが、「手動」ログ縮小イベントは表示されず、「自動」イベントのみが表示されます。私はこれを間違った方法で行っていますか?過去の情報を探すための他の場所ですか?手動の縮小イベントをキャプチャするには、以下のようなクエリを使用します:

SELECT 
    TextData,
    HostName,
    ApplicationName,
    LoginName, 
    StartTime  
FROM 
[fn_trace_gettable]('C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log\log_75.trc', DEFAULT) 
WHERE TextData LIKE '%SHRINKFILE%'; ----- Location of default trace will be different ,so kindly check that accordingly

自動拡張イベント用の(93、95)などのイベントを使用しているため、クエリを実行していると思われる理由で、手動の拡張または縮小イベントが表示されない

3
KASQLDBA

SQL Server 2014の最後の週/月の成長と縮小のイベントの完全な履歴を確認する方法はありますか?

データベースレポートからデータ/ログファイルの自動拡張および自動圧縮イベントに関する情報を取得する簡単な方法があります。レポートは、デフォルトのトレースからデータをフェッチします。デフォルトのトレースがいつロールオーバーされたかに依存するレポートがどれくらい最近のものになるかわかりません。デフォルトのサイズは20 MBで、その後はロールオーバーされ、SQL Serverの再起動後にトレースがロールオーバーされることにも注意してください。

SQL Serverインスタンスに接続し、データベースを右クリックして、レポートを選択し、次に標準レポートを選択して、ディスク使用量をクリックします。

表示されるレポートでData/log file autogrowt auto shrink eventsを探し、+ signを展開します。これは循環使用レポートのすぐ下にあります。レポートは次のようになります。

私の場合、自動縮小または縮小アクティビティが実行されていないため、自動成長イベントのみが報告されましたが、これはまったく悪いことだと思います。

enter image description here

10
Shanky