我有计算节点的消息流,它从数据库调用一些存储过程。我在这个节点上为 db1 设置了数据源字段,在 odbc.ini 文件中存在相同的名称。现在我想动态(无需重新部署)将数据源更改为 db2。现在我已经找到了这两种解决方案,但它们都很丑:
- 更改 odbc.ini 中的数据源描述并调用 mqsireload。
为数据库名称和模式声明用户定义的属性,并像这样调用存储过程:
CALL SOME_PROC() IN DATABASE.{UDP_DBNAME}.{UDP_DBSCHEMA};
然后,您可以使用代理 API 在运行时更改此属性,流将立即捕获它。
还有其他选择吗?