gpt4 book ai didi

c# - 如何将 Umbraco CMS 从使用 SQL Server CE 升级到 SQL Server 的升级版本?

转载 作者:行者123 更新时间:2023-11-30 14:07:36 25 4
gpt4 key购买 nike

我想将本地主机(以及最终我的实时网站)上的 Umbraco 项目从在 SQL Server CE 上运行升级到 SQL Server 2014 或 SQL Server 2016。

升级的原因很简单:我可能在某个时候想要管理一个网站,该网站的数据库中有超过 4GB 的数据,可以通过多台服务器进行扩展,并且我想备份一些东西。否则我会偷懒,不理会 Umbraco.sdf。

我没有在任何地方找到关于此过程的一致文档。也许你们中的一个人可能对 SQL 或 Umbraco 更有经验并且可以提供帮助。

(旁白:对于不太熟悉 Umbraco 的人,Umbraco 是一个用 C# 和 JavaScript 编写的内容管理系统。这里有一个名为 Umbraco.sdf 的 SQL 文件,其中包含网站的所有内容。)

最佳答案

我想出了这个,以防其他人被卡住。

方法如下:

第 1 步:移植您当前的数据库。使用 Umbraco,有一种简单的方法可以做到这一点。只需安装 Export SQL Server Compact 包,它是 Umbraco CMS 的一个插件。安装后,按照说明生成 SQL 文件。

第 2 步:将生成的脚本导入 SQL Management Studio 并在新数据库中运行。为此:创建一个新数据库并为新用户提供访问该数据库的权限设置(不要使用您的服务器登录名 - 您可以,但最好创建一个用户以便您可以远程访问)。之后,继续将整个文件(是的,整个文件)复制并粘贴到一个新查询中(右键单击数据库 -> 运行查询),粘贴脚本并运行它。

第 3 步:更改连接字符串。这是在您的 web.config 中。在 的 XML 标记中,配置类似于此的内容(删除 {}):

<add name="umbracoDbDSN" 
connectionString="Data Source={the ip of your database};Initial Catalog={theDatabaseName};User Id={theUserId};Password={yourPassword}"
providerName="System.Data.SqlClient" />

此连接字符串的好处在于,您可以使用相同的连接字符串在本地和现场进行编辑。这允许您在本地主机上测试代码更改,而无需更改网站上的代码。唯一自动链接的是 CMS 内容。

确保不要删除旧的 Umbraco 连接字符串,以防你想恢复它。只需将其注释掉即可。

第 4 步:加密 web.config。显然,将数据库密码以明文形式保存在您的网站上是不明智的。这个关于加密您的 web.config 的 MSDN 非常宝贵。

这样做会导致一些损失:

  1. 数据库的可移植性。有时您只想将一个文件作为数据库而不是整个服务器。我们只建议在您的站点基本完成时执行此步骤,因为配置 SQL Server 并确保其安全是您不必担心的额外挑战。

  2. 有时,图像无法传输。您可能必须手动重新输入所有图像。

  3. 可能的安全性。每次发布网站时,您可能必须手动重新加密 web.config。这可能非常危险 - 因此请确保您的网站始终对 web.config 进行加密,即使是在新发布时也是如此。

关于c# - 如何将 Umbraco CMS 从使用 SQL Server CE 升级到 SQL Server 的升级版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39305498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com