06-"Login failed for user 'NT AUTHORITY\SYSTEM'. 原因: 无法打开明确指定的数据库。[客户端:<local machine>]"异常处理

1、错误描述

 

 今天公司SQLServer服务器报出好多登录失败的错误,并且刷的频率非常高,仔细看主要就是2个错误,如下:

(1)Login failed for user 'NT AUTHORITY\SYSTEM '。原因:无法打开明确指定的数据库。[客户端:<local  machine>]

(2)Login failed for user 'sa '。原因:无法打开明确指定的数据库。[客户端:<10.xx.xx.xx>]

数据库的版本如下:

 

 

2、错误原因

(1)出现这2个登录失败的问题,都是程序登录数据库导致,和数据库本身没什么关系,并且和数据库的补丁也没有关系;

(2)sa登录数据库失败,这个问题从数据库层面看,sa用户本身是没有问题的,并且该实例下的数据库都是online状态,sa是sysadmin权限,是可以访问该实例下的任何数据库的,所以即使不配置数据库映射,也是没问题的;

3、解决办法

(1)NT AUTHORITY\SYSTEM 登录失败,可以先禁用,看本地是否有部署什么程序会报错的,排查一下;

(2)出现这个问题,报出“无法打开明确指定的数据库”,需要排查这个远程访问数据库的服务器(也就是10.xx.xx.xx)上配置的数据库连接,是否还有其他的连接,指定的数据库名称在该SQLServer实例上没有,或者以前有,后来删除的数据库配置;

果然,最后发现是有数据库迁移走了,但是程序里还在调用这个数据库名称,导致一直报这个错误;

posted @ 2020-08-06 11:14  佳蓝雨  阅读(6114)  评论(1编辑  收藏  举报