我们正在使用带有 Windows 身份验证设置的 Sql Server 2005。因此,通常,当您使用 Sql Server Management Studio 登录时,它会强制您在 MACHINE_NAME\Username 登录。
无论如何,在这台特定的计算机上,该人说他们必须创建一个名为 User01 的新帐户才能做某事,并向我展示了她在“主”系统数据库中的安全性下创建它的位置。所以现在当她登录时,它被列为 MACHINE_NAME\User01(不是实际的 Windows 用户名)。不过,它仍然设置为 Windows 身份验证,我无法更改登录名。
现在,真正的问题来了……我当时没有意识到她是用这个用户名登录的,所以我禁用了它,看看会发生什么。现在我无法登录她帐户下的服务器。
我在 Windows 中创建了一个名为 test 的新帐户,正如预期的那样,SSMS 的用户名是 MACHINE_NAME\test,我能够正常登录。但是,据我所知,列出 User01 帐户的区域对我来说是不可见的,因此我无法重新启用它。
我还尝试运行以下查询:
alter login User01 ENABLE
并得到这个错误:
Msg 15151, Level 16, State 1, Line 1
Cannot alter the login 'User01', because it does not exist or you do not have permission.
所以简而言之,理想情况下,我想以某种方式重新启用 User01,只是为了让事情回到原来的位置。如果做不到这一点,我如何强制 SSMS 使用应有的 Windows 帐户名登录,而不是尝试使用 User01?
如果您以 Test 用户身份登录并且在服务器级别没有授予 Test 用户其他权限,那么它将无法访问 User01 帐户。您需要成为 securityadmin 或 sysadmin 角色的成员,拥有 CONTROL SERVER 权限,或类似的东西。您最初使用什么帐户连接和禁用 User01?如果是 User01,并且您没有其他方法可以进入,则可以通过在单用户模式下启动来实现。只要您以计算机本地管理员组的成员身份登录,这将允许您返回 SQL Server。
如果要使用 Windows 身份验证,则需要在计算机管理界面上更改用户名。
要在计算机管理界面上更改您的用户名,请单击“开始”,然后单击“设置”,然后单击“控制面板”,或者打开“控制面板”。
打开“管理员工具”。
打开“计算机管理”。
在位于左侧的分支面板中,打开“计算机管理(本地)”
打开“系统工具”
打开“计算机管理(本地)”
打开“本地用户和组”
打开“用户”
在右侧面板上右键单击要重命名的用户名,单击“重命名”命令。
输入新名称,然后按 Enter 键。