消息详细信息
| 产品名称 | SQL Server |
| 事件编号 | 21797 |
| 事件源 | MSSQLSERVER |
| 组件 | SQL Server 数据库引擎 |
| 符号名称 | |
| 消息正文 | “%s”必须是格式为“MACHINE\Login”或“DOMAIN\Login”的有效 Windows 登录名。 请参阅“%s”的文档。 |
说明
如果为 @job_login 参数指定的值为 null 或无效,则以下复制存储过程将引发此错误。 如果 db_owner 固定数据库角色的成员运行以前版本的 SQL Server 中的脚本,则可能会出现此错误。 SQL Server 2005 中安全模型已更改,并且必须更新这些脚本。
这些存储过程可由相应服务器上的 sysadmin 固定服务器角色的成员或相应数据库中 db_owner 固定数据库角色的成员执行。 存储过程各自创建一个代理作业,并允许你指定代理运行所在的 Microsoft Windows 帐户。 对于 sysadmin 角色的用户,即使未指定 Windows 帐户(如果指定帐户,必须是有效的),代理作业也会隐式创建;代理在相应服务器的 SQL Server 代理服务帐户的上下文中运行。 尽管不需要该帐户,但最好是为代理指定单独的帐户。 有关详细信息,请参阅 复制代理安全模式。
用户操作
确保为每个过程 @job_login 参数指定有效的 Windows 帐户。 如果具有以前版本的 SQL Server 的复制脚本,请更新这些脚本以包含 SQL Server 2005 所需的存储过程和参数。 有关详细信息,请参阅升级复制脚本(复制 Transact-SQL 编程)。