活动
3月31日 23时 - 4月2日 23时
最终的 SQL、Power BI、Fabric 和 AI 社区主导的活动。 3月31日至4月2日。 将代码 MSCUST 用于 150 美元的折扣。
立即注册适用于: SQL Server
Azure SQL 托管实例
Attribute | 值 |
---|---|
产品名称 | SQL Server |
事件 ID | 24070 |
事件来源 | MSSQLSERVER |
组件 | SQL Server 数据库引擎 |
符号名称 | |
消息正文 | 客户端没有所需的特权。 |
这是一个常规错误,不管是否进行复制,都会引发该错误。 对于复制拓扑中的服务器,通常会引发此错误,因为使用 Microsoft Windows 服务控制管理器(而不是SQL Server 配置管理器)更改了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
成为此安全组的成员,便可以向新帐户授予运行复制代理作业所需的权限。
活动
3月31日 23时 - 4月2日 23时
最终的 SQL、Power BI、Fabric 和 AI 社区主导的活动。 3月31日至4月2日。 将代码 MSCUST 用于 150 美元的折扣。
立即注册