Applies To: SQL Server 2016

Product NameSQL Server
Event ID21797
ComponentSQL Server Database Engine
Symbolic Name
Message Text'%s' must be a valid Windows Login in the form: 'MACHINE\Login' or 'DOMAIN\Login'. Please see the documentation for '%s'.

This error is raised by the following replication stored procedures if the value specified for the @job_login parameter is null or not valid. This error can occur if a member of the db_owner fixed database role runs scripts from previous versions of SQL Server. The security model changed in SQL Server 2005, and these scripts must be updated.

These stored procedures can be executed by a member of the sysadmin fixed server role on the appropriate server or a member of the db_owner fixed database role in the appropriate database. The stored procedures each create an agent job and allow you to specify the Microsoft Windows account under which the agent runs. For users in the sysadmin role, agent jobs are created implicitly even if a Windows account is not specified (if an account is specified, it must be valid); agents run under the context of the SQL Server Agent service account at the appropriate server. Although the account is not required, it is a security best practice to specify a separate account for the agents. For more information, see Replication Agent Security Model.

Ensure you specify a valid Windows account for the @job_login parameter of each procedure. If you have replication scripts from previous versions of SQL Server, update these scripts to include the stored procedures and parameters required by SQL Server 2005. For more information, see Upgrade Replication Scripts (Replication Transact-SQL Programming).

Errors and Events Reference (Replication)

Community Additions