计算机结构错误的事,事件ID 18456:用户登录失败。 原因: 基于令牌的服务器访问验证失败,出现基础结构错误...

事件类型:审核失败

事件来源:MSSQLSERVER

事件种类:登录

事件 ID:18456

日期:2015-4-22

事件:11:11:21

用户:域\计算机名

计算机:域

描述:

用户 '域\计算机名$' 登录失败。 原因: 基于令牌的服务器访问验证失败,出现基础结构错误。请检查以前的错误。 [客户端: 192.168.1.183]

有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持中心。

数据:

0000: 18 48 00 00 0e 00 00 00   .......

0008: 0c 00 00 00 53 00 5a 00   ....

0010: 31 00 43 00 41 00 52 00

0018: 44 00 31 00 2d 00 44 00

0020: 42 00 00 00 07 00 00 00   B......

0028: 6d 00 61 00 73 00 74 00

0030: 65 00 72 00 00 00         e.r...

分析及解决:

现在我们只知道是这台计算机: [域\计算机名 ],IP为:192.168.1.183 ,这台计算机要连接到当前的数据库服务器,才提示“审核失败”

但是不清楚是什么进程或服务连接过来的!所以这错误也没什么可分析了!~

现在打开 【Sql Server Profiler】监控以下事件,注意要选择列【ClientProcessID】:

Error and Warnings \ ErrorLog

Error and Warnings \ ErrorLog

72075ce9fe5f37570391a5daed16289b.png

开启跟踪一段时间,直到出现该错误!~

210440b8608f1361747f2ac020567bf9.png

这是可以看到 进程号 ClientProcessID=2136

登录到服务器 192.168.1.183 ,打开【任务管理器】找到 进程号ClientProcessID=2136 的服务

d404689c93e5d4004002e329b24bc872.png

打开计算机服务,发现是这个服务是以“本地系统” 运行的,改为 域管理员或者其他账户运行,不再出现了!

出现这种情况,大都是账户权限不足。

附加:(或者使用T-SQL跟踪)

-- Create a Queue

declare @rc int

declare @TraceID int

declare @maxfilesize bigint--跟踪文件的大小,单位是MB,默认不设置为5MB

declare @TraceFilePath nvarchar(500)-- 跟踪文件的路径

set @maxfilesize = 20

set @TraceFilePath=N'G:\ErrorLog_Trace'

exec @rc = sp_trace_create @TraceID output, 0,@TraceFilePath, @maxfilesize, NULL

if (@rc != 0) goto error

-- Set the events

declare @on bit

set @on = 1

exec sp_trace_setevent @TraceID, 22, 7, @on

exec sp_trace_setevent @TraceID, 22, 31, @on

exec sp_trace_setevent @TraceID, 22, 8, @on

exec sp_trace_setevent @TraceID, 22, 64, @on

exec sp_trace_setevent @TraceID, 22, 1, @on

exec sp_trace_setevent @TraceID, 22, 9, @on

exec sp_trace_setevent @TraceID, 22, 41, @on

exec sp_trace_setevent @TraceID, 22, 49, @on

exec sp_trace_setevent @TraceID, 22, 6, @on

exec sp_trace_setevent @TraceID, 22, 10, @on

exec sp_trace_setevent @TraceID, 22, 14, @on

exec sp_trace_setevent @TraceID, 22, 26, @on

exec sp_trace_setevent @TraceID, 22, 3, @on

exec sp_trace_setevent @TraceID, 22, 11, @on

exec sp_trace_setevent @TraceID, 22, 35, @on

exec sp_trace_setevent @TraceID, 22, 51, @on

exec sp_trace_setevent @TraceID, 22, 12, @on

exec sp_trace_setevent @TraceID, 22, 20, @on

exec sp_trace_setevent @TraceID, 22, 60, @on

exec sp_trace_setevent @TraceID, 21, 7, @on

exec sp_trace_setevent @TraceID, 21, 31, @on

exec sp_trace_setevent @TraceID, 21, 8, @on

exec sp_trace_setevent @TraceID, 21, 64, @on

exec sp_trace_setevent @TraceID, 21, 1, @on

exec sp_trace_setevent @TraceID, 21, 9, @on

exec sp_trace_setevent @TraceID, 21, 41, @on

exec sp_trace_setevent @TraceID, 21, 49, @on

exec sp_trace_setevent @TraceID, 21, 6, @on

exec sp_trace_setevent @TraceID, 21, 10, @on

exec sp_trace_setevent @TraceID, 21, 14, @on

exec sp_trace_setevent @TraceID, 21, 26, @on

exec sp_trace_setevent @TraceID, 21, 3, @on

exec sp_trace_setevent @TraceID, 21, 11, @on

exec sp_trace_setevent @TraceID, 21, 35, @on

exec sp_trace_setevent @TraceID, 21, 51, @on

exec sp_trace_setevent @TraceID, 21, 12, @on

exec sp_trace_setevent @TraceID, 21, 20, @on

exec sp_trace_setevent @TraceID, 21, 60, @on

-- Set the Filters

declare @intfilter int

declare @bigintfilter bigint

set @intfilter = NULL

exec sp_trace_setfilter @TraceID, 9, 0, 1, @intfilter

exec sp_trace_setfilter @TraceID, 10, 0, 7, N'SQL Server Profiler - 179c8ff5-5879-48dd-a4cc-921575b43b84'

-- Set the trace status to start

exec sp_trace_setstatus @TraceID, 1

-- display trace id for future references

select TraceID=@TraceID

goto finish

error:

select ErrorCode=@rc

finish:

go

/*

select * from ::fn_trace_getinfo(0)

select * from sys.traces

select * from ::fn_trace_gettable('G:\ErrorLog_Trace.trc',1)

select ClientProcessID,NTUserName,ApplicationName,HostName,LoginName,StartTime,TextData

from ::fn_trace_gettable('G:\ErrorLog_Trace.trc',1)

exec sp_trace_setstatus 2,0--停止跟踪

exec sp_trace_setstatus 2,2--删除跟踪

*/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值