You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SymmetricDS-Oracle指定同步Schema并禁用Push及注册问题求助

SymmetricDS Oracle 同步问题解决指南

核心问题解答

1. 能否指定同步的Schema?

可以。在配置同步规则时,通过sym_table表的source_schema_name字段明确指定ACF、ADM这类需要同步的Schema;也可以在创建触发器时,直接指定对应Schema下的目标表。

2. 能否禁用Push,仅用主到子的Pull模式?

没问题。只需要配置单向的节点组链接,将data_event_action设为P(代表Pull),同时确保子节点侧不配置反向的Push链接,就能实现主节点修改后,子节点主动拉取同步的模式。


节点注册失败的修复步骤

你碰到的“缺少central到client的节点组链接”报错,按下面的步骤逐一排查:

1. 验证节点组链接是否生效

执行插入语句后,先查一下这条记录是否真的存在:

SELECT * FROM sym_node_group_link WHERE source_node_group_id='central' AND target_node_group_id='client';

如果查不到,说明插入没成功——检查语句语法,或者确认是否在SymmetricDS对应的配置数据库里执行的这条SQL。

2. 核对两端节点组配置

  • 主节点(centralNode)的server.properties里,确保:
    group.id=central
    external.id=000
    
  • 子节点(clientNode)的client.properties里,确保:
    group.id=client
    external.id=001
    registration.url=http://X.X.X.X:31415/sync/centralNode
    

注意group.id的大小写要和你插入的节点组链接里的完全一致(Oracle对标识符大小写敏感,除非你创建时用了双引号)。

3. 重置注册请求并重新开放注册

先清理可能存在的无效注册请求:

DELETE FROM sym_registration_request WHERE node_group_id='client' AND external_id='001';

然后重新执行开放注册的命令:

bin/symadmin --engine centralNode open-registration client 001

4. 查看日志定位细节问题

去clientNode的logs/symmetric.log里找更详细的报错信息,比如是不是网络连不上主节点,或者数据库用户没有访问ACF/ADM Schema的权限。

5. 确认Oracle权限配置

  • 主节点数据库用户需要有创建触发器、读取ACF和ADM Schema表的权限
  • 子节点数据库用户需要有写入ACF和ADM Schema表、访问SymmetricDS配置表的权限

内容的提问来源于stack exchange,提问作者Ark

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 05:50:27