0

我有一个使用 EF 5.0 和 MySQL 作为数据库的 ASP.NET MVC4 站点。在我的开发 PC 上一切正常,但是当我使用 IIS7 为我的 Windows 2008 Web Server SP2 构建站点时,我收到以下错误...

Access denied for user 'root'@'::1' (using password: NO)

现在,令人困惑的是,这个问题是通过在连接字符串(我有)中提供密码来解决的,所以我不知道为什么我仍然会收到这个错误。

我的 web.config 中的连接字符串是:

metadata=res:// /MyModel.csdl|res:// /MyModel.ssdl|res://*/MyModel.msl;provider=MySql.Data.MySqlClient;provider connection string="server=localhost;user id=根;密码=1234;持久安全信息=真;端口=3307;数据库=MyDb"

4

2 回答 2

0

尝试将连接字符串更改为

metadata=res:///MyModel.csdl|res:///MyModel.ssdl|res://*/MyModel.msl;provider=MySql.Data.MySqlClient;provider connection string="server=localhost;user id=根;密码=1234;持久安全信息=真;端口=3307;数据库=MyDb"

您的连接字符串没有关闭“

于 2013-03-08T14:15:59.547 回答
0

我设法解决了这个问题......奇怪的是,'localhost' 适用于与数据库的常规 MySQL 连接(我在没有 EF 的 ASP.NET 网站中使用它)。

但是现在使用 EF,似乎专门将 127.0.0.1 作为服务器而不是 localhost 解决了这个问题。

确实很奇怪!

于 2013-03-08T14:40:50.447 回答