#逻辑备库功能约束

主备集群架构中,如果存在逻辑备库,将对主库的业务功能和操作做了如下约束:

# 功能约束

  • TAC和LSC表类型的无法同步
  • 不允许主键列更新(主库执行主键列更新,逻辑备库可能会与主库的数据不一致)
  • 外部表无法同步
  • SEQUENCE的高水位线无法同步
  • 不允许表的数据闪回(逻辑备库可能会与主库的数据不一致)
  • 不允许的数据类型:游标、JSON、XML、UDT等
  • 无法同步的对象:
    • 审计策略
    • 权限
    • PROFILE
    • 用户以及角色(支持同步drop user)
    • 表空间和数据文件、双写文件
    • OUTLINE
    • DATABASE LINK
    • AC
    • DIRECTORY

# 操作约束

  • 逻辑备库同步期间,不允许手动关闭主库的库级附加日志。(关闭库级附加日志会导致逻辑备库出现异常,无法正常同步)
  • 逻辑备库不允许级联部署。
  • 逻辑备库不能开启自选主。
  • 逻辑备库的非SYS用户不能执行写业务。
  • 逻辑备库不同步主库SYS用户的业务。
  • 逻辑备库执行Failover之后,集群的其他节点需要重新构建。

# 容错策略

  1. SQL回放时如遇资源类错误(例如,表空间不足,CURSOR POOL不足等)会阻塞回放,DBA_LOGSTDBY_EVENTS视图会记录相关事件,需要DBA介入修复。
  2. SQL回放时如遇主键更新冲突将直接跳过引起冲突的操作,可能会出现与主库数据一致,DBA_LOGSTDBY_EVENTS视图会记录相关事件。
  3. STREAM POOL空间不足时,SQL回放会被中断,数据库被置为ABNORMAL状态,需要DBA介入,调整STREAMP POOL并重启数据库。
pdf-btn 下载文档
copy-btn 复制链接