代码之家  ›  专栏  ›  技术社区  ›  Mark Harrison

Oracle OCI更改通知-host=应该是客户机吗?

  •  1
  • Mark Harrison  · 技术社区  · 15 年前

    我有一个示例程序,它可以很好地处理一个数据库,并且不会在另一个数据库上进行回调调用。

    我注意到在工作中 SELECT CALLBACK FROM USER_CHANGE_NOTIFICATION_REGS 返回一个引用客户端IP地址的字符串,该字符串似乎与回调所需的内容直观匹配。

        (46, 4, 'net8://(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.252.1)(PORT=49406))?PR=0',
         0, 0, 1800, 'MH.CBDEMO')
        # 172.16.252.1 = client machine
    

    在总线情况下,主机字符串由数据库主机的IP地址填充。

      (271, 4, 'net8://(ADDRESS=(PROTOCOL=tcp)(HOST=138.72.249.167)(PORT=50966))?PR=0',
       0, 0, 1800, 'MH.CBDEMO')
      # 138.72.249.167 = database host
    

    所以,有两个问题:

    1. 主机=parm是否应该引用OCI客户机?

    2. 找出主机=parm的错误填写位置的最佳方法是什么?

    环境:

    • 客户端:mac osx,oci,python+cx_oracle;数据库:10.2.0.4.0
    • 好的服务器:在VMware上的Linux,10.2.0.4.0
    • 故障服务器:Linux RAC,10.2.0.4.0
    1 回复  |  直到 13 年前
        1
  •  0
  •   Mark Harrison    13 年前

    Oracle已确认这是Oracle10GRAC中的一个错误。字段应该是客户机IP地址,它在非rac系统上工作。