Job is enqueued but there are no active servers to process it

I’ve installed Hangfire on an ASP.MVC website and my jobs are successfully enqueued (or so I think…) but they never get processed. Querying the Jobs database table indicates that they are ‘stuck’ in the ‘Enqueued’ status.

I’ve tried to see if the dashboard would reveal more information but my only hint so far is: There are no active servers. Background tasks will not be processed.

Querying the Server database table confirms that it is indeed empty.

I was having this problem. SQL Server was reporting a login failure for the domain\machinename that Hangfire was on. It turns out I had to make sure that the IIS Application pool identity also had permission to use the database. We were using identity impersonation; so, I ended up changing the identity to the same user we were impersonating rather than the default ApplicationPoolIdentity. When I restarted the application pool, the server came right up.