MySql数据库连接问题

本文关键字:问题 数据库连接 MySql | 更新日期: 2023-09-27 17:59:37

我有一个ASP。NET应用程序,该应用程序连接到mysql数据库。如果在服务器上我在visualstudio(使用开发服务器)中运行网站,它可以正确地连接到mysql数据库。

但是,如果在同一台服务器上使用IIS,则会引发异常'Unable to connect to any of the specified MySQL hosts'。它被配置为使用标识为'ApplicationPoolIdentity'的应用程序池。

连接字符串类似于:

<add name="MYSQLConnectionString" connectionString="uid=name;server=111.11.111.111;Pwd=password;database=dbname" providerName ="MySql.Data.MySqlClient"/>

可能是什么问题?

MySql数据库连接问题

使用Visual Studio进行调试时,帐户是本地管理员,并且最有可能拥有所有内容的权限。IIS默认应用程序池帐户没有这些提升的权限。请确保运行IIS站点应用程序池的帐户具有正确的权限,或者将该帐户临时更改为本地系统,以查看是否存在与权限相关的问题。您可以使用FileMon来跟踪默认帐户在访问哪些文件或注册表项时遇到问题。

[编辑]

最有可能的是,您将MySQL安装到了C:'MySQL之类的位置,并且只需要授予IIS应用程序池帐户对该目录的读取权限,并且可能还需要一两个注册表项。

该网站没有安装在根目录中,而是作为默认网站中的应用程序安装。如果我们将其作为根站点运行,它就会工作。但不知道为什么。