在 DNN 中连接到数据库失败

Posted

技术标签:

【中文标题】在 DNN 中连接到数据库失败【英文标题】:Connection To The Database Failed in DNN 【发布时间】:2013-05-08 13:44:53 【问题描述】:

我正在尝试安装 DotNetNuke,我使用 Window Server 2008 创建了一个虚拟机,并按照视频系列安装了 DotNetNuke。

当我运行 InstallerWizard 时,我收到此错误:“连接到数据库失败”

请注意,当我没有找到帐户是 apppol/dnndev.me 时,我将我的虚拟登录帐户添加为数据库所有者,我什至创建了一个帐户但仍然没有。

我对此感到沮丧,我花了 3 天时间试图解决它,因为我对 IIS 了解不多。

【问题讨论】:

你是如何配置 SQL Server 的? Express 还是连接到现有数据库? 当我打开 SQL Studio 管理器时,我会在服务器名称中获得 WIN-O10UIAC9FNG\SQLEXPRESS,第一个是我的机器名称,然后我创建了一个数据库并将帐户作为所有者添加到这个数据库 我删除了此帐户并为所有应用程序池和站点文件夹添加了网络服务,并且作为数据库所有者,页面仅在数据库部分加载第一部分我收到错误数据库连接错误 您可以从您的 web.config 中发布连接字符串吗? (只要确保它不包含任何密码或公共 IP 地址)。 我尝试修改站点 web.config 中的连接字符串,但仍然出现连接错误,我将其更改如下, 【参考方案1】:

您是否尝试使用 SQL Server Express 进行设置?如果是 express 版本,我建议您将 AppPool 身份设置为 ApplicationPoolIdentity 并将“加载用户配置文件”设置为“True”。

【讨论】:

感谢您的回复,但我在哪里可以设置 AppPool 身份? 检查 IIS 中的 APPLICATION POOL 以查看它在哪个帐户下运行 它在 ApplicationPoolIdentity 下运行 我改成了NETWORK SERVICE账号 当您拥有 AppPool 身份时 - 您需要拥有正确的文件夹权限。从命令提示符执行以下 ------ icacls C:\MyWebSitePath /grant "IIS APPPOOL\MyAppPoolName":(OI)(CI)(F)【参考方案2】:

当我尝试在本地设置网站时遇到同样的错误。我的是由于应用程序池中的用户身份错误。这就是我为解决它所做的:

1) 在 IIS 中,转到您的站点,单击基本设置或高级设置,然后找到应用程序池名称。

2) 在 IIS 中,在左侧的应用程序池树分支下,选择您站点的应用程序池,然后单击它。

3) 点击高级设置,然后点击身份。设置帐号的用户名和密码。

【讨论】:

【参考方案3】:

将您的应用程序池标识更改为 NetworkService

打开 IIS(运行->inetmgr)并按照下面屏幕截图中的步骤操作。

IIS -> Change Application Pool Indentity for DNN Site

【讨论】:

以上是关于在 DNN 中连接到数据库失败的主要内容,如果未能解决你的问题,请参考以下文章

如果在 Android 中连接到 BLE 设备失败,如何通知用户?

在 R Shiny 中连接到 BigQuery

在 C# 中连接到 Websphere MQ 有效,但在 C++ 中失败,代码为 2058 (MQRC_Q_MGR_NAME_ERROR)

在spring boot中连接到多个数据库

在 C# 中连接到 MySql 数据库

如何在 Python 中连接到 MySQL 数据库?