2016-07-14 120 views
7

我有安装了SQL Server 2016 Dev的Windows 10 Pro计算机。机器上有两个本地用户帐户:[WORK \ admin]和[WORK \ erop]。首先创建[WORK \ erop]帐户,无需连接到Microsoft。但后来我将它连接到我的MS帐户。安装SQL Srv时,[WORK \ erop]帐户已添加到sysadmin角色。SQL Srv 2016:登录失败,用户'MicrosoftAccount ...'

现在我尝试用SSMS连接到SQL SRV实例作为[WORK \ erop],但得到:

Login failed for user 'MicrosoftAccount\<my_MS_account>'. Reason: Could not find a login matching the name provided. [CLIENT: <local machine>] Error: 18456, Severity: 14, State: 5. means “无效的用户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 

,一切都OK。但我不知道有没有更聪明的方法将MS_account映射到在SQL Srv实例上登录的本地用户?

+0

你有没有找到任何解决方案? –

+1

我的解决方案是上面的代码片段。但是,如果你的意思是期望的“更聪明的方式”......不,不幸的是不是。 – erop

+0

看起来像你想出来的。我的2美分是我会继续说,你想作为SQL Server的管理员帐户,你应该在实际的机器上设置为ADMIN的帐户,并用该帐户登录(您可以随时降低权限,但我永远不会这样做),因为我假设您希望使用此特定帐户运行SQL服务并安装SQL Server。然后在安装SQL Server之后添加安全登录,如上所述。 – Moojjoo

回答

0

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

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

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