最近我遇到了一个问题,即托管在 2 节点故障转移群集中的 SQL Server 2012 无法启动。由于集群和 Windows 事件日志没有太大帮助,我开始检查 SQL Server 错误日志,每次我尝试在故障转移集群管理器中启动 SQL Server 角色时,都会出现以下错误
用户“NT AUTHORITY\SYSTEM”登录失败。原因:找不到与提供的名称匹配的登录名。[客户: ]
所以我继续创建登录 NT AUTHORITY\SYSTEM 并将其添加到 Sysadmin 角色。它奏效了!
现在我怀疑我所做的是否正确或不安全。
- 我听说在 SQL Server 中创建 NT AUTHORITY\SYSTEM 是不安全的,如果是这种情况,我应该将集群服务更改为域帐户吗?这会影响什么吗?
- 我将 NT AUTHORITY\SYSTEM 添加到 Sysadmin 角色 - 这真的是必需的还是我可以只为登录显式提供所需的权限
是的,预计会失败。它记录在这里。
现在回答:
我假设您正在谈论实际的集群服务。如果是这样的话,那么不,不要改变它。当使用域帐户时,您可以在 WS2003 中更改它,但自 2008 年以来这是不可能的。如果您这样做,您的集群很可能会中断。
不需要系统管理员。根据上面的链接/报价,需要查看服务器状态。
https://support.microsoft.com/en-us/help/2847723/cannot-create-a-high-availability-group-in-microsoft-sql-server-2012
检查 SQL 安全/登录“NT AUTHORITY\SYSTEM”属性。检查“Securables” 您应该会看到列出的服务器主机名。(如果没有,则使用“搜索..”按钮添加它。)选择主机名并仅验证复选框,1)授予更改任何效用组,2)授予连接 SQL 和 3)授予查看服务器状态。不应选择其他人。