MSSQL_ENG021798
消息详细信息
属性 | 值 |
---|---|
产品名称 | SQL Server |
事件 ID | 21798 |
事件来源 | MSSQLSERVER |
组件 | SQL Server 数据库引擎 |
符号名称 | |
消息正文 | 在继续操作之前,必须通过 '%s' 添加 '%s' 代理作业。 请参阅 '%s' 的文档。 |
说明
要创建发布,您必须是发布服务器上的 sysadmin 固定服务器角色的成员或者发布数据库中的 db_owner 固定数据库角色的成员。 如果您是 db_owner 角色的成员,则发生以下情况将会引发此错误:
从 SQL Server 2000(8.x)运行脚本。 SQL Server 2005(9.x)中的安全模型已更改,并且必须更新这些脚本。
存储过程sp_addpublication在执行sp_addlogreader_agent(Transact-SQL)之前执行。 这适用于所有的事务发布。
存储过程sp_addpublication在执行sp_addqreader_agent(Transact-SQL)之前执行。 这适用于为排队更新订阅启用的事务发布(sp_addpublication 的
@allow_queued_tran
参数的值为 TRUE)。
存储过程 sp_addlogreader_agent 和 sp_addqreader_agent 每个存储过程创建一个代理作业,并允许指定运行代理的 Microsoft Windows 帐户。 对于 sysadmin 角色中的用户,如果未执行sp_addlogreader_agent和sp_addqreader_agent,则隐式创建代理作业;代理在分发服务器的 SQL Server 代理 服务帐户的上下文下运行。 尽管 sp_addlogreader_agent 和 sp_addqreader_agent 对于 sysadmin 角色中的用户不是必须的,但是为了安全起见,最好为代理指定单独的帐户。 有关详细信息,请参阅 复制代理安全模式。
用户操作
请确保按正确的顺序执行过程。 有关详细信息,请参阅 Create a Publication。 如果具有以前版本的 SQL Server 的复制脚本,请更新这些脚本以包含 SQL Server 2005(9.x)和更高版本所需的存储过程和参数。 有关详细信息,请参阅升级复制脚本(Replication Transact-SQL 编程)。