SQL Server 默认会自动跟踪数据库的自动增长,注意只有自动增长才会被记录,手动增长不会被记录。
使用以下代码确实跟踪是否被打开:
exec sp_configure 'default trace enabled';
go
如果被打开,SQL Server就会自动产生trace文件。使用以下sql确认trace文件的位置:
select *
from sys.fn_trace_getinfo(1);
返回的是最后产生的trace文件。
接下来就是查询trace文件的内容并找到自动增长相关的记录:
一般来说trace文件是5个,大小固定,使用一段时间就会rotate。将上面查询出来的trace文件的位置填入下面sql中,例如 C:\Program Files\MSSQL\Log\Log_111.trc
select
te.name as event_name,
tr.DatabaseName,
tr