今天发现一个问题,用户在运行报表的时候无法查询,提示没有权限。可是以前是好好的啊,为什么不行了呢?
试着用账户登录SQL Server没有问题,但是无法访问数据库。用sp_change_users_login'report'查询,发现这个账户是孤立的。
看起来是有人改动过这个账户了。由于是只读数据库,用Auto_fix无法解决,难道要重新创建?
突然想到可以将这个账户删除,然后从主服务器上将账户的创建脚本倒出来然后再重新创建,这样就可以保证SID是相同的,可以解决这个问题。
解决办法:
1.在Secondary服务器删除旧的SQL Login账户。
2.用存储过程sp_help_revlogin在辅助服务器导出Login的生成脚本
3.在辅助服务器运行创建脚本。
4.查询孤立用户发现已经没有了,问题解决。
sp_change_users_login'report'
下一步就是要查为什么会发生改变了,头大啊。
本文详细描述了一个用户在运行报表时无法查询的问题,原因是账户被更改并变为孤立状态。通过删除旧账户、导出创建脚本并在辅助服务器上重新创建,成功解决了问题。最后,提出了解决该问题后需进一步调查原因。

被折叠的 条评论
为什么被折叠?



