Sql server SQL Srv 2016:用户登录失败';微软账户\…';

Sql server SQL Srv 2016:用户登录失败';微软账户\…';,sql-server,windows-10,microsoft-account,sa,Sql Server,Windows 10,Microsoft Account,Sa,我已经安装了装有SQL Server 2016 Dev的Windows 10 Pro计算机。计算机上有两个本地用户帐户:[WORK\admin]和[WORK\erop]。最初创建[WORK\erop]帐户时未连接到Microsoft。但后来我将其连接到我的MS帐户。安装SQL Srv时,已将[WORK\erop]帐户添加到sysadmin角色 现在,我尝试以[WORK\erop]的身份连接到SQL Srv实例,但收到: 用户“MicrosoftAccount\”登录失败。原因:找不到与提供的名称

我已经安装了装有SQL Server 2016 Dev的Windows 10 Pro计算机。计算机上有两个本地用户帐户:[WORK\admin]和[WORK\erop]。最初创建[WORK\erop]帐户时未连接到Microsoft。但后来我将其连接到我的MS帐户。安装SQL Srv时,已将[WORK\erop]帐户添加到sysadmin角色

现在,我尝试以[WORK\erop]的身份连接到SQL Srv实例,但收到:

用户“MicrosoftAccount\”登录失败。原因:找不到与提供的名称匹配的登录名。[客户:] 和
错误:18456,严重性:14,状态:5。
哪个“无效用户ID”

我猜SSMS是在MS帐户下启动的,因为MS帐户在SQL Srv实例上没有登录,所以它拒绝连接

我执行

CREATE LOGIN [MicrosoftAccount\<MS_account>] FROM WINDOWS WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english]
GO

ALTER SERVER ROLE [sysadmin] ADD MEMBER [MicrosoftAccount\MS_account]
GO
从WINDOWS创建登录名[MicrosoftAccount\],默认数据库=[master],默认语言=[us\U english]
去
更改服务器角色[sysadmin]添加成员[MicrosoftAccount\MS\U帐户]
去

一切都很好。但我想知道有没有更聪明的方法将MS_帐户映射到登录SQL Srv实例的本地用户?

我不会认为任何解决方案比您的解决方案更聪明,这取决于您的情况和需要。但是,如果您不关心OneDrive等功能,您也可以恢复为本地用户

开始>化身按钮>更改帐户设置>您的电子邮件和帐户>改为使用本地帐户登录


但是,再次添加登录是最聪明、最简单的解决方案。

您找到了解决方案吗?我的解决方案就是上面的代码片段。但如果你的意思是想要的“更聪明的方式”。。。不,不幸的是没有。看来你明白了。我的2美分是,我想继续说,你想要作为SQL Server管理员的帐户,你应该在实际机器上设置该帐户作为管理员,并使用该帐户登录(你可以随时降低权限,但我永远不会这样做)因为我假设您希望使用此特定帐户运行SQL服务并安装SQL Server。然后在安装SQL Server后添加安全登录,如上所述。唉,这对我不起作用,我得到“未找到Windows NT用户或组‘MicrosoftAccount\…。请再次检查名称。”