我正计划使用SiteCore 6.5进行企业部署.... 我想有一个CMS(WebAuthoring)实例和几个服务器作为内容交付...... 我想在Content Delivery和WebAuthoring实例之间复制核心数据库......我无法理解LinkDatabase的作用......我是否需要Content Delivery上的链接数据库?! 我还在考虑没有内容交付的CORE数据库的替代方案,在这种情况下,我应该将LinkDatabase放在Web数据库上,我是否应该有一个重建LinkDatabase的过程,或者在内容交付中它是完全无用的情景???我真的无法从文档中了解链接数据库的目的和使用它的API。 请告诉我你的意见和想法。
答案 0 :(得分:1)
据我所知,您不必在内容交付节点上拥有LinkDatabase。然而,这是非常方便的,因为它是获取特定项目的参考和/或引用列表的最快方法之一。
您可以将LinkdDatabase指向Web数据库,Sitecore将自动为您更新,如“扩展指南”第3.6.1节所述:
您可以使用Sitecore链接数据库API访问所有项目 由特定Sitecore项引用或引用的。
所有链接数据库信息都存储在Core数据库中 默认,并聚合来自每个Sitecore内容的项目的数据 数据库中。
您可以在web.config中配置链接数据库的位置 connectionStringName参数中的链接数据库部分文件:
<!-- LINK DATABASE -->
<LinkDatabase type="Sitecore.Data.$(database).$(database)LinkDatabase, Sitecore.Kernel">
<param connectionStringName="core" />
</LinkDatabase>
在单服务器Sitecore设置中,链接数据库是自动进行的 更新。
在多服务器Sitecore设置中,仅链接数据库 自动更新从CM引用的数据库 环境。
确保Sitecore自动更新中的链接数据库 CD环境:
- CD和CM实例必须使用相同的名称来引用跨环境(通常是Web)的发布目标数据库。
- 应满足以下条件之一:
- 应在CM和CD实例之间共享或复制Core数据库。
- 应将链接数据库数据配置为存储在CM和CD发布目标数据库之间共享的数据库中 (通常是网络)。
如果要从内容交付节点中删除核心数据库,则在Configuring Production Environments(PDF)文档中有一个名为“从内容交付环境中删除Core数据库”的部分。
答案 1 :(得分:0)
链接数据库跟踪项目之间的关系,例如项目&lt; - &gt;模板关系。这是Sitecore所必需的,也可能是您的自定义组件,因此他们可以快速查找这些关系。
如果数据库不在物理上位于不同的计算机上,我只会选择共享的核心数据库,其中所有服务器都使用相同的核心。
如果它们位于不同的计算机上,那么请选择单独的Core with SQL replication。
没有Core的场景是可能的,但不推荐,因为设置和维护起来比较困难。