1

我正在尝试将 WebMatrix DotNetNuke 站点发布到共享托管环境。文件发布得很好,但是发布数据库会导致一些问题。

这是来自 WebMatrix 发布日志的片段(我已经编辑了实际的 SQL 用户名和 SQL 主机 - [方括号] 中的内容):

02:03:59:添加 dbFullSql(用户 id=[username];database=[dbname];server=[server])。
02:03:59:无法创建数据库“[dbname]”。  
02:03:59:重试对象 dbFullSql 上的“添加”操作(用户 id=[用户名];数据库=[数据库名];服务器=[服务器])。尝试 2 中的 1。
02:03:59:无法创建数据库“[dbname]”。  
02:03:59:重试对象 dbFullSql 上的“添加”操作(用户 id=[用户名];数据库=[数据库名];服务器=[服务器])。尝试 2 之 2。
02:03:59:无法发布。
02:03:59:无法发布。无法发布。
02:03:59:错误详情:
02:03:59: (06/02/2011 02:03:59) 在远程计算机上处​​理请求时发生错误。
02:03:59:在 Microsoft.Web.Deployment.StatusThreadHandler.CheckForException()
02:03:59:在 Microsoft.Web.Deployment.AgentClientProvider.RemoteDestSync(DeploymentObject sourceObject, DeploymentSyncContext syncContext)
02:03:59:在 Microsoft.Web.Deployment.DeploymentObject.SyncToInternal(DeploymentObject destObject, DeploymentSyncOptions syncOptions, PayloadTable payloadTable, ContentRootTable contentRootTable)
02:03:59:在 Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentProviderOptions providerOptions, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
02:03:59:在 Microsoft.Web.Deployment.DeploymentObject.SyncTo(字符串提供程序,字符串路径,DeploymentBaseOptions baseOptions,DeploymentSyncOptions syncOptions)
02:03:59:在 Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentWellKnownProvider 提供程序,字符串路径,DeploymentBaseOptions baseOptions,DeploymentSyncOptions syncOptions)
02:03:59:在 Microsoft.WebMatrix.Deployment.MsDeployWorker.Execute(布尔回调)
02:03:59:无法创建数据库“[dbname]”。

从上面的日志中可以明显看出,DotNetNuke WebDeploy 包正在尝试创建数据库。数据库已经存在,我可以使用 SQL Management Studio 远程连接到它。

因为这是一个托管的共享 SQL 环境,所以托管商不会允许用户创建数据库。托管 SQL 服务器上的 SQL 数据库用户/登录名是数据库的 dbowner。

这是 WebMatrix DNN WebDeploy 发布包中的错误吗?

有什么解决方法吗?

这是使用 WebMatrix 1.0 RTM 和从 WebMatrix 应用程序库下载的 DotNetNuke 应用程序。我创建了一个本地 SQL Express 数据库来为 DNN 站点提供一些内容。一切都很好,现在我正在尝试发布到已经创建数据库的共享主机环境。

4

1 回答 1

0

我没有使用 WebMatrix 安装 DNN,但是我手动安装了很多 DNN 站点。

您的发布日志说:

02:03:59:无法创建数据库 ''。

您是否从引号中删除了数据库名称,还是完全按照日志?如果数据库名称为空,则无法创建。否则,可能是 ASP.NET 工作进程(通常命名为 aspnet_wp)对 SQL Server 没有任何权限。

你用的是什么网络主机?有些,比如godaddy,很难在上面安装DNN。

于 2011-02-06T10:01:33.527 回答