2017-04-25 108 views
1

我刚刚上传我的网站到服务器,并得到一个错误称为“无法打开数据库请求登录登录失败登录失败的用户”。实体框架无法打开数据库请求通过登录 - 登录失败用户

在上Application_Start方法中我的Global.asax文件,我有这样的:

Database.SetInitializer<MyContext>(null); 

所以我手动创建我的数据库,并使用脚本之后创建表。但是当我想登录时,它会给我一个错误。

在我的数据库中,我的表格,登录页面的用户名和密码看起来很好。只是无法连接到数据库。

我的ConnectionString是:

<add name="MyDatabase" connectionString="Data Source=serveradress;Initial Catalog=MyDatabase;User ID=username;Password=password;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient" /> 

我会的意见表示感谢。

+0

假设你使用MS-SQL:你可以通过SQL管理工作室使用给定的凭据连接到数据库吗? – Stefan

+0

检查您的SQL Server是否启用了TCP/IP通信。我想问题在EF和服务器之间。也可能是防火墙。 – nocodename

+0

我可以通过SQL管理工作室上的这些证书进行连接。我的网站文件托管公司。 –

回答

-1

连接到数据库服务器

你应该检查,如果你的服务器可以连接到数据库服务器。也许防火墙阻止了连接。

如果服务器使用TCP/IP,那么最简单的方法就是telnet到SQL Server端口并查看它是否连接。默认情况下,这是1433端口,所以这应该工作:

telnet servername 1433 

这可能会在大多数情况下,适当的。

如果它使用不同的端口或动态端口(与命名实例共同),那么您需要确定它当前正在监听哪个端口。检查SQL Server配置管理器以查看它是特定端口还是动态端口。如果它使用的是动态端口,那么只要在服务器上没有多个实例,netstat -abn可能是找到它所用内容的最简单方法。否则,请深入了解Windows事件日志或SQL Server错误日志,以获取指示实例正在使用哪个端口的消息。

如果SQL Server使用命名管道,那么我相信如果您能够访问机器上的共享,则您具有足够的网络连接。这篇文章说,你可以更进一步,尝试连接到IPC $共享:

http://msdn.microsoft.com/en-us/library/aa275787%28v=sql.80%29.aspx

net use \\servername\IPC$ 

数据库服务器

进入到SQL Server >>安全>>登录,然后右键点击安全设置在“用户名”上选择属性。

Logins

在登录属性的新开屏,进入“用户映射”选项卡。然后,在“用户映射”选项卡上,选择所需的数据库 - 尤其是显示此错误消息的数据库。在屏幕下方,检查所需的角色。

User Mapping

+0

无法完成,因为它提供了权限错误。我的数据库托管公司。 –

+0

你的服务器能够连接到数据库吗? – Nicholas

+0

是的,我可以通过SQL管理工作室连接,但是当我尝试按照你的方式,在步骤和步骤(点击确定按钮)给我“你没有权限错误:15151” –

1

我刚刚解决了这个问题。问题是“典型的程序员问题”。我需要编写MyDatabase,但我写了MyDatabse。自11点以来,我试图解决这个问题。谢谢你的回复。

相关问题