3

在过去的几年里,我一直在与共享托管服务提供商合作开发 PHP/MySQL 网站。日常流程基本上是:

  • 在 Eclipse 中开发,每个文件夹一个网站
  • 通过 FileZilla 上传,每个文件夹一个网站
  • 使用 PHPMyAdmin 创建和管理您的本地和在线数据库,并将数据从一个数据库传输到另一个数据库
  • 为了备份在线数据库,我将数据库表转储到脚本中并在本地复制它们

我现在想在共享主机提供商上使用 ASP.NET 和 SQL Server 2008 构建网站,并且正在尝试进入这个新范例,希望你们中的一些人可以根据您的经验给我一些指导,并告诉我我没有做什么最佳:

  • 我已经安装了 Visual Web Developer 2008 Express 和完整版的 Visual Studio 2008,它们似乎都是用于开发 ASP.NET 站点的全功能工具。就共享主机提供商的网站而言,完整版可以做什么,而快递版不能做什么?
  • 我使用 FileZilla 上传我的网站,这似乎工作正常。您是使用外部 FTP 程序上传网站还是使用上述 IDE 中的“发布”或“FTP 网站”?
  • 我安装了 SQL Server 2008 Management Studio,现在可以向我的在线 SQL Server 数据库发出 SQL 命令(虽然奇怪的是我在左侧列表中看不到我的数据库,但我仍然可以访问它,我认为这是一些权限问题我的提供商 www.domainbox.de,但该提供商告诉我改用他们的在线管理器,它被称为“ASP.NET 企业管理器”,非常简单,但至少有一个“查询框”允许我发送查询到我的数据库。)这是 ASP.NET 托管程序的“ASP.NET 企业管理器”标准还是有其他更好的东西,例如您可以在网格中编辑数据的地方等?我假设大多数提供商都可以使用 SQL Server Management Studio 管理在线 SQL Server 数据库,对吗?(我记得 2001 年在共享托管服务提供商处使用 Enterprise Manager 管理在线 SQL Server 2000 数据库,我需要 10 分钟才能看到左侧的数据库,因为它还列出了其他 800 个客户数据库——希望现在已经解决了)。
  • 如何将在线数据库中的数据备份到本地存储?(目前我必须编写将我的数据输出为其他格式的代码,例如 XML 或 SQL 脚本)
  • 在您对本地数据库进行大量结构和数据更改后,您如何将这些更改和新数据传输到您的在线数据库?(我必须安装 SSMS 工具 [ http://www.ssmstoolspack.com]才能将我的数据转储到一个脚本中,以便我可以将其恢复到我的在线数据库中)。

所以,虽然我已经完成了大部分工作,但我觉得必须有更好的方法来解决这个问题,更好的提供程序,更好的工具等。希望听到任何使用 ASP 的人的一些“最佳实践”建议。 NET、SQL Server 和共享主机。

4

2 回答 2

3

在大多数情况下,您现在所做的将适用于 asp.net 网站。

对于您的开发环境,我认为您不会因为使用 Visual Web Developer 2008 express 而受到限制。这是一个微软页面,它比较了 Visual Studio 2008 的每个版本,包括 Visual Web Developer 2008 Express:Visual Studio 2008 产品比较

对于通过网络部署您的网站,我通常会坚持手动部署。您可以在 Visual Studio 中使用一些自动化的东西,但您的部署往往会慢一些。编译您的应用程序后,它将删除目标网站中的每个文件,并从头开始上传所有文件(我认为是未压缩的)。发生这种情况时,您的整个网站都将关闭。当您手动部署时,您可以仅上传更改的文件,或者以压缩格式上传所有内容。

关于 SQL 服务器,许多共享托管服务会让您连接某种本地 SQL 管理工具。但是,以这种方式连接通常会使用大量带宽,因此他们会降低这种方式的允许带宽。这可能是您之前看到的性能问题。如果你能过得去,我会在你的大部分工作中使用他们托管的 SQL 工具,然后使用管理工作室来处理它无法处理的任何事情。

为了备份您的 SQL 服务器,如果您的主机没有办法让您执行自动备份,那么您将不得不自己做一些事情。我将首先检查它们是否允许您至少运行 SQL 备份命令。这将在本地数据库服务器上生成数据库的 .bak 文件。大多数地方都会与您合作,因为许多客户都需要这个。

为了将更改应用到数据库,最好的办法是将所有更改编写到一个 sql 脚本中,然后使用远程 SQL 管理工具运行它。这些并不难编写,并且有一些工具可以帮助您。我个人喜欢使用 Visio。它让我比较两个数据库(本地和远程),然后生成一个脚本以应用于远程数据库的所有更改。

祝你好运

于 2008-11-25T19:50:54.063 回答
0

就 VS Express 与 Standard 的功能而言,Standard 仍然是更好的工具。它为您提供更丰富的调试体验、对解决方案/项目依赖项的更广泛支持等。

即使在进行共享托管 b/c 时,这些事情仍然很重要,您绝对需要调试您的应用程序(客户端和服务器端)。您可以使用 Express 充分地做到这一点,但有一些注意事项(不能附加到任意进程,客户端 javascript 调试很痛苦),标准使这更容易。

对于发布/部署——我会推荐“ Web Depoyment Projects ”——一个可以从 MS 下载的 MSBuild 扩展。这为您提供了很多可自定义的方式来构建和部署您的网站 - 这可以包括将其发送到 FTP 站点。如果您曾经使用过 MSBuild 并且喜欢它 - Web 部署项目是使用 ASP.NET 网站扩展您的构建过程的最简单的钩子。

于 2008-11-25T04:26:39.767 回答