MSSQL_ENG024070
消息详细信息
Attribute | 值 |
---|---|
产品名称 | SQL Server |
事件 ID | 24070 |
事件源 | MSSQLSERVER |
组件 | SQL Server 数据库引擎 |
符号名称 | |
消息正文 | 客户端没有所需的特权。 |
说明
这是一个常规错误,不管是否进行复制,都会引发该错误。 对于复制拓扑中的服务器,引发该错误的原因通常是使用 SQL Server Windows 服务控制管理器,而不是 Microsoft 配置管理器来更改 SQL Server 代理服务帐户。 当您在更改服务帐户后尝试运行代理作业时,作业可能会失败,并显示类似如下的错误消息:
Executed as user: \<UserAccount>. Replication-Replication Snapshot Subsystem: agent \<AgentName> failed. Executed as user: \<UserAccount>. A required privilege is not held by the client. The step failed. [SQLSTATE 42000] (Error 14151). The step failed.
出现此问题的原因是 Windows 服务控制管理器无法向 SQL Server 代理的新服务帐户授予所需权限。
用户操作
为了避免以后再出现此问题,请始终使用 SQL Server 配置管理器而非 Windows 服务控制管理器来更改服务帐户和密码。
若要解决此问题,请使用 SQL Server 配置管理器将服务帐户更改为原始帐户。 然后,使用 SQL Server 配置管理器更改为新帐户。 执行此操作时, SQL Server 配置管理器会将新帐户添加到以下安全组中:
SQLServer2008SQLAgentUser$ComputerName$InstanceName
成为此安全组的成员,便可以向新帐户授予运行复制代理作业所需的权限。
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈