SQL Server Agent Fails to start - MSDB not available for normal access

Posted on 2006-03-27
Last Modified: 2012-05-05
My SQL server fails to start the SQL Server Agent and comes up with the following error,
'SQLServerAgent cannot start because the msdb database is not available for normal access'

When trying to start it it logs the startup event in the Event viewer straight away
(error code 103)
Then it logs an event 102 - SQLServerAgent successfully stopped

I would appreciate any ideas on this one
Question by:milcp
    LVL 75

    Accepted Solution

    Hi milcp,

    can you you check whether the UserAccess for MSDB is set to  RESTRICTED_USER. ; use the following statement

    exec sp_helpdb msdb ;  -- and check the status field

    If so, then run the following

    exec sp_dboption 'msdb','dbo use only',false

    After execution , Start the SQL agent service

    LVL 3

    Assisted Solution

    1. Verify that MSDB can be connected using sa account.
    2. If yes, then check the account that you used to start the SQL Server Agent. You can find this out by going to Start - Program - SQL Server 2005 - Configuration Tools - Configuration Manager. Right click and select properties on SQL Server Agent. Make sure that the account used has access to MSDB.

    Thats it I think.

    LVL 75

    Expert Comment

    by:Aneesh Retnakaran
    Split points to aneeshattingal and ericpete

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Free Trending Threat Insights Every Day

    Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

    Introduced in Microsoft SQL Server 2005, the Copy Database Wizard ( is useful in copying databases and associated objects between SQL instances; therefore, it is a good migration and upgrade tool…
    When you hear the word proxy, you may become apprehensive. This article will help you to understand Proxy and when it is useful. Let's talk Proxy for SQL Server. (Not in terms of Internet access.) Typically, you'll run into this type of problem w…
    Viewers will learn how the fundamental information of how to create a table.
    Viewers will learn how to use the SELECT statement in SQL to return specific rows and columns, with various degrees of sorting and limits in place.

    779 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    13 Experts available now in Live!

    Get 1:1 Help Now