'The process could not execute 'sp_replcmds' on <ServerName>

I am having a lot of trouble setting up transactional replication on my test server. I am running SQL Server 2008 SP2.

I am able to create a transactional publication. The snapshot agent works fine and subscribing to the publication works fine as well. The problem that I get is that the log reader agent fails with the error:

The process could not execute 'sp_replcmds' on [ServerName]

The snapshot and log reader agents are run under a windows account with administrator privileges on the domain and sysadmin privileges on the sql server. I have also tried running the agents under the SQL agent profile. I have tried executing sp_replflush and restarting the SQL agent. I have also tried increasing -LoginTimeout to 500 and -ReadBatchSize to 10.

Any help greatly appreciated.



Solution 1:[1]

There are a few reasons that can cause this, but for me recently the problem was that both databases were owned by a domain account. As soon as I switched them both to owned by "sa", it was fixed.

Solution 2:[2]

Can you try changing output verbose level to 4 to see any additional info.chnanging readbatch size will not help if it is a single transaction.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Nik
Solution 2 TheGameiswar