我想使用SQL Query检索最大错误日志文件值。
答案 0 :(得分:2)
从运行SQL Server Profiler并跟踪调用,这就是SSMS所做的事情。
declare @NumErrorLogs int
exec master.dbo.xp_instance_regread N'HKEY_LOCAL_MACHINE',
N'Software\Microsoft\MSSQLServer\MSSQLServer',
N'NumErrorLogs',
@NumErrorLogs OUTPUT
SELECT @NumErrorLogs
答案 1 :(得分:2)
Sql错误日志文件数设置存储在Windows注册表“[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SQL Server \ MSSQL10_50.SQLEXPRESS_ADV \ MSSQLServer] \ NumErrorLogs”
可以使用以下sql(来自sql profiler)检索它。
use master
declare @HkeyLocal nvarchar(18)
declare @MSSqlServerRegPath nvarchar(31)
declare @InstanceRegPath sysname
select @HkeyLocal=N'HKEY_LOCAL_MACHINE'
select @MSSqlServerRegPath=N'SOFTWARE\Microsoft\MSSQLServer'
select @InstanceRegPath=@MSSqlServerRegPath + N'\MSSQLServer'
declare @NumErrorLogs int
exec master.dbo.xp_instance_regread @HkeyLocal, @InstanceRegPath, N'NumErrorLogs', @NumErrorLogs OUTPUT
SELECT
ISNULL(@NumErrorLogs, -1) AS [NumberOfLogFiles]