可以自动创建 Sitecore Web 数据库吗?

Sitecore Web db automatic creation possible?

是否可以仅使用 Master 和 Core 启动 Sitecore?我们先去内容编辑器然后发布。通过这个我们期望创建 web Db。下面哪一个是正确的

  1. 发布时,Web 数据库会根据连接字符串中的名称自动创建吗?
  2. 发布时将不会创建 Web 数据库。 Web 数据库应该存在并且应该有正确的模式来进行发布。
  3. 应通过创建主数据库的副本来设置 Web 数据库,这将在发布时被覆盖。

可以仅使用 mastercore 数据库启动 Sitecore。它被称为Sitecore Live Mode。您可以阅读更多相关信息,例如

  1. Sitecore Live Mode - What, Why and When.
  2. How to run Sitecore in live mode.
  3. Sitecore Live Mode

但这意味着内容是从 master 数据库自动提供的,所以:

  1. web 不会自动创建数据库
  2. 是的,web数据库必须存在才能发布。
  3. 不,不要通过复制 master 数据库来创建 web 数据库。使用干净的 Sitecore zip 中的空 web 数据库(使用与您的应用程序完全相同的版本)。

为了回答这个问题, 如果 Web(或任何)数据库不存在,您将无法让 Sitecore 创建该数据库。

并不是说这不可能,但它并不是开箱即用的,而且这是一个不太可能的用例,所以我无法想象他们会构建这样的功能。

Sitecore 数据库应该适当 sized/scaled 以满足工作量。特别是,Web 数据库是面向 public 的,因此需要特别考虑调优,这很难或不可能通过启发式方法进行预测。

您可以通过在 bootstrap 管道(初始化之前的那个,我不记得它叫什么)开始时启动的 PowerShell 脚本来解决这个问题,否则系统将在启动时尝试失败执行连接字符串。