首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SiteFinity升级App_Data\Sitefinity\Configuration

SiteFinity升级App_Data\Sitefinity\Configuration
EN

Stack Overflow用户
提问于 2014-04-14 20:09:45
回答 2查看 696关注 0票数 0

我正在进行升级的5.1网站的最新版本。

对于文档中的这一步骤,我有一个问题。我不会对数据库做任何新的更改。我只需要升级一下。我在暂存机上运行了Project,并注意到配置文件已经更新。我没有在本地复制数据库。我应该对~/App_Data/Sitefinity/Configuration中的文件做些什么吗?

来源:http://www.sitefinity.com/documentation/documentationarticles/upgrading-you-sitefinity-5.1-project-to-the-latest-version

..。如果您想要用本地升级的文件替换(您的生产网站和数据库),请打包升级的网站及其数据库,并将它们部署到生产环境中。有关更多信息,请参见部署。

如果要在不替换数据库的情况下将本地升级的网站与生产网站合并,请执行以下操作:

将升级后的网站打包,不要使用~/App_Data/Sitefinity/Configuration中的配置文件。不包括本地升级的数据库。..。

有人能给我指明正确的方向吗?谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-19 05:45:38

以下是升级的工作方式:

项目管理器更新bin文件夹中的DLL文件。您需要重新编译解决方案,以便SitefinityWebApp.dll使用更新的dll引用。

然后,当您第一次运行该站点时,升级过程将启动并更新.config文件。它还更新了数据库中的几个表,可以通过以下方式更新许多:

  • 更改DB模式,例如向现有表添加新列等。这通常是由不同的模块触发的,如News
  • 用新版本更新sf_schema_vrsns表--该表中的值必须与配置文件中的版本匹配。

现在,当您在暂存或开发环境上完成了升级,并且测试了它并希望将您的Live环境升级到新版本时,以下是您的选择:

  1. 将所有项目文件从dev复制到活动(包括Bin文件夹、web.config、.config文件等)并将DB从Dev还原为Live。如果自上一次备份以来没有对活动站点进行任何更改,这是可以的,这就是而不是您的情况。在DB还原过程中,站点将无法访问。

  1. 将所有DLL文件从Dev环境的Bin文件夹(包括SitefinityWebApp.dll)复制到Live文件夹。这将重新启动站点,当它第一次运行时,它将看到dll版本高于配置文件和DB中的版本,并将启动升级过程。这意味着-它将更新配置文件和DB,如上所述。DB更新可能需要一段时间,这取决于您的旧版本和新版本的更新时间,但通常情况下它是相当快的。此外,DB的大小很重要,例如升级到6.3,需要更新sf_object_data表中的所有记录,在我们的例子中,这些记录有几十万条,而且它还在做一些其他的LINQ计算,所以如果数据库为10 DB,可能需要一些时间。在数据库升级期间,网站将无法访问。注意,并非所有的DB升级任务都处于阻塞状态--这意味着只有最重要的任务才需要执行才能访问站点。长期运行的升级任务通常是在后台完成的(作为sf_scheduled_tasks表中的计划任务),因此可以同时访问站点。
票数 1
EN

Stack Overflow用户

发布于 2015-03-16 10:37:07

我认为当您将Sitefinity5.1升级到最新版本时,您不需要更改数据库。因为它只更新bin文件夹中的程序集文件和dll。

您可以在以下网站阅读更多信息:http://docs.sitefinity.com/upgrade

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23069391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档