2010-07-05 119 views
1

我有一个SQL Server 2008实例和SQL Server 2008 Express实例。无法连接到SQL Server 2008 Express实例

我一直主要使用SQL Server 2008实例与下面的连接字符串...

<add name="Local-DB-connection" connectionString="Data Source=JONATHAN-PC; Database=dbname; User ID=uname; Password=pword;" providerName="System.Data.SqlClient" /> 

能正常工作。

现在明确的情况下,我有相同的名字和相同的数据库中的用户,但无论怎样,我总是得到这个错误

Cannot open database "dbName" requested by the login. The login failed. 
Login failed for user 'NT AUTHORITY\NETWORK SERVICE'. 

现在我已经加入 - 快递连接上Trusted_Connection=True字符串,因此NT AUTHORITY \ NETWORK SERVICE

我发现我活的服务器上固定的类似问题时,我都用一个论坛帖子

http://blog.sqlauthority.com/2009/08/20/sql-server-fix-error-cannot-open-database-requested-by-the-login-the-login-failed-login-failed-for-user-nt-authoritynetwork-service/

它基本上谈论添加NT AUTHORITY \ NETWORK SERVICE的用户,但该用户不在列表中添加。

即时通讯将坚果这里,和IM怀疑它与我的两个SQL Server实例冲突的

任何人都可以提供一些线索这光做?

感谢

truegilly

回答

1

只是为了检查,你要访问SQL Express数据库与正确的实例名称,即JONATHAN-PC \ SQLEXPRESS或类似的?

NETWORK SERVICE应该在列表中。如果你去

  • 安全,登录新登录,搜索,高级
  • 在位置框中选择您的电脑(应该是默认的,除非你在一个域)
  • 立即查找

那么它应该在列表中作为网络服务。如果您选择它,它会出现在NT AUTHORITY中。

一旦你在你的列表中,你需要授予它访问你的数据库。您的链接建议将其设置为db_owner - 这对生产是危险的,您应该将其权限降低到一个更受限制的集合,但是为了开发和证明 - 它的工作原理可能没问题。

+0

你好,当连接到SQL服务器时,我使用JONATHAN-PC,当连接表达时我使用JONATHAN-PC \ SQLEXPRESS_R2。 – JGilmartin 2010-07-06 08:01:06

+0

不错的一个,它是NETWORK SERVICE,正如你所说的那样,对NT AUTHORITY的更改,我在用户列表中看不到它的事实是抛出我,BIG UP尊重RUP的事实;) – JGilmartin 2010-07-06 14:34:02