在 Standard 或 Advanced 许可等级下可用。
可以在 ArcGIS Pro 内使用同步更改地理处理工具按照用户指定的方向来同步两个复本地理数据库之间的更新。 本主题将介绍此工具的输入参数,并回顾一些非常重要的选项。
同步更改工具将提供以下选项:
输入地理数据库和复本
- 地理数据库 1:要同步的复本所在的地理数据库。 地理数据库可能是本地地理数据库,或者可能引用 ArcGIS Server 上的地理数据服务。 同步更改工具将尝试根据默认设置和在复本中存储的信息自动填充参数。 当从管理复本窗格上的菜单按钮 或分布式地理数据库快捷菜单启动同步更改工具时,地理数据库 1 将包含来自当前工作空间的连接信息。 复本参数将使用在工作空间中找到的第一个复本进行填充。 如果同步更改工具从卡片启动,复本参数将获取该卡片的复本名称。
注:
只能将地理数据库作为地理数据服务从 ArcMap 发布到 ArcGIS Server。 在 ArcGIS Pro 中,可以将这些地理数据服务作为地理数据库参数与复制配合使用。
- 复本 - 父项在一个输入地理数据库中而子项在另一个输入地理数据库中的有效复本
- 地理数据库 2 - 相关复本所在的地理数据库。 地理数据库可能是本地地理数据库,或者可能引用 ArcGIS Server 上的地理数据服务。 此外,对于地理数据库 2,如果相关复本连接信息存储在当前复本的复本属性中,则该工具将搜索匹配的连接文件或基于复本中存储的信息构造临时连接文件。 然后,将使用此信息填充地理数据库 2,之后,将验证连接以查看其是否可访问。 如果无法访问,则地理数据库 2 将失效,用户必须更正该信息。
方向
在同步更改时,可以选择希望发送更改的方向。
对于双向复本,以下三个选择均适用:可以向相关复本发送更改、从相关复本获取更改,或者向两个方向移动更改。 如果选择两个方向,则在一次操作中先向一个方向发送更改,然后向相反方向发送更改。
对于单向复本,仅可以使用向一个方向发送更改的选项,可以从父复本到子复本或者从子复本到父复本。 对于检出/检入复本,只能使用从子复本向父复本发送更改的选项。
- 双向 - 将对更改进行双向同步。 对于双向复本,这是默认值。
- 从地理数据库 1 到地理数据库 2 - 将从地理数据库 1 向地理数据库 2 同步更改。
- 从地理数据库 2 到地理数据库 1 - 将从地理数据库 2 向地理数据库 1 同步更改。
冲突解决策略
在同步过程中,可能需要在同步版本和复本版本之间进行协调和提交。 在协调过程中,可能会发生冲突。 可以选择协调策略以定义如何处理这些冲突。 有关同步版本、复本版本以及何时进行协调的信息,请参阅同步和版本化。
冲突解决策略包括以下内容:
- 手动 - 使用此策略时,如果发生冲突,则中止协调操作,并将复本标记为冲突状态 。 随后您即可以手动方式或通过运行自定义协调代码来执行协调操作。 完成协调并将更改提交给复本版本后,复本将不再处于冲突状态。 尽管复本处于冲突状态,它仍可以继续接收更改但不能发送更改。 有关详细信息,请参阅手动解决同步冲突。
- 优先使用地理数据库 1 解决 - 如果发生冲突,则将跳过地理数据库 2 中的制图表达,自动使用地理数据库 1 中的制图表达。 由于冲突会自动得到解决,因此使用此策略进行同步后,复本从不会处于冲突状态。
- 优先使用地理数据库 2 解决 - 如果发生冲突,则将跳过地理数据库 1 中的制图表达,自动使用地理数据库 2 中的制图表达。 由于冲突会自动得到解决,因此使用此策略进行同步后,复本从不会处于冲突状态。
注:
默认策略是使用父复本的制图表达。 可能优先使用地理数据库 1,也可能优先使用地理数据库 2,具体取决于哪一个地理数据库包含父复本。
对于双向复制,如果选择在两个方向上同步,则不能选择手动协调策略。
冲突定义
- 由行定义的冲突 - 按对象检测冲突。
- 由列定义的冲突 - 按属性检测冲突。
使用父版本协调
此选项仅适用于检出/检入复本,用于指示如果不存在任何冲突,则在将数据更改发送到父复本后是否自动进行协调。
- 不进行协调 - 不进行协调。 这是默认设置。
- 协调 - 自动协调。
注:
同步过程的导入阶段在事务中进行。 同步的第二个阶段包括协调,这也在事务中进行。 需要的资源(例如撤消空间或逻辑日志文件)将随着要同步的更改数量而变化。 如果导入阶段完成但协调阶段返回错误,则复本将显示为冲突 ,可稍后手动完成协调。
错误处理
如果在同步过程中发生错误,将回滚该操作。 已应用的所有更改都将被移除,系统将恢复到执行同步之前的状态。
进行双向同步时,可能会出现例外情况。 即,如果在完成应用某一方向上的更改这一过程后发生错误,则将提交这些更改;但是,系统仍然处于一致状态,且不会影响进一步同步。