1

我将应用程序池的用户指定为SERVER4 \ IUSR_SERVER4。然后我将此用户添加到SQL Server。但是,当我尝试连接到数据库中,我得到了以下错误:抱怨不存在的用户

Server Error in '/BSHHD' Application. 
Cannot open user default database. Login failed. 
Login failed for user 'SERVER4\Administrator'. 

是什么力量推动我疯狂是有没有名为SERVER4 \ Administrator用户。为了能够从我的网站正确连接到这个SQL Server数据库,我需要做些什么?

P.S.我认为这与会员身份验证有关。现在我需要找出成员如何访问SQL Server和它指定的登录凭据

+0

我看到3个选项。以用户身份运行您的站点 - 并使用Windows身份验证,在站点上强制执行NT身份验证,以用户身份登录,或者最后创建专门供您的站点使用的用户名和密码。 – BugFinder 2012-07-24 09:45:08

+1

运行应用程序池的帐户并不一定表示这是用于连接到数据库的证书。你到底如何连接到数据库? – DeanOC 2012-07-24 09:57:01

+0

这里是我的连接字符串:Data Source = SERVER4 \ SQLEXPRESS; Initial Catalog = dok; Integrated Security = False; User ID = clerk; Password = dsmf1914我只需创建一个SQL连接然后打开它。 – 2012-07-24 09:59:36

回答

2

的事情是,应用程序池的用户并不一定是你用来连接MSSQL的用户(如在评论一个人已经说明)。看到连接字符串后,可能是这种情况,也许,也许,问题不是用户,而是默认数据库。

我以前有过这样的错误:尝试将你在连接字符串(店员)默认数据库中使用的用户设置为别的东西。如果您之前为用户设置了默认数据库,并且现在数据库不再存在或者存在一些问题,则此错误很常见。

可以使用这样的事情改变用户的默认数据库:

Exec sp_defaultdb @loginame='clerk', @defdb='dok' 

您也可以使用这样的事情,但我从来没有使用过它:

ALTER LOGIN SQLLogin WITH DEFAULT_DATABASE = AvailDBName 

而且,没有必要将集成安全性设置为false,因为它已经是默认值。我希望这有助于=)