我正在使用Debezium(0.7.5)MySQL连接器,我试图了解如果我想使用table.whitelist
选项更新此配置,那么最好的方法是什么。
假设我创建了一个连接器,如下所示:
curl -i -X POST -H "Accept:application/json" -H "Content-Type:application/json" http://debezium-host/connectors/ -d '
{
"name": "MyConnector",
"config": {
"connector.class": "io.debezium.connector.mysql.MySqlConnector",
"connect.timeout.ms": "60000",
"tasks.max": "1",
"database.hostname": "myhost",
"database.port": "3306",
"database.user": "***",
"database.password": "***",
"database.server.id": "3227197",
"database.server.name": "MyServer",
"database.whitelist": "myDb",
"table.whitelist": "myDb.table1,myDb.table2",
"database.history.kafka.bootstrap.servers": "kb0:9092,kb1:9092,kb2:9092",
"database.history.kafka.topic": "MyConnectorHistoryTopic",
"max.batch.size": "1024",
"snapshot.mode": "initial",
"decimal.handling.mode": "double"
}
}'
过了一段时间(2周),我需要将一个新表(mydb.table3
)添加到这个table.whitelist
选项中(而且这个表是一个旧表,它是在连接器之前创建的)
我尝试的是:
通过API更新命令:
curl -i -X PUT -H "Accept:application/json" -H "Content-Type:application/json" https://kafka-connect-host/connectors/MyConnector/config/ -d '
{
"connector.class": "io.debezium.connector.mysql.MySqlConnector",
"connect.timeout.ms": "60000",
"tasks.max": "1",
"database.hostname": "myhost",
"database.port": "3306",
"database.user": "***",
"database.password": "***",
"database.server.id": "3227197",
"database.server.name": "MyServer",
"database.whitelist": "myDb",
"table.whitelist": "myDb.table1,myDb.table2,myDb.table3",
"database.history.kafka.bootstrap.servers": "kb0:9092,kb1:9092,kb2:9092",
"database.history.kafka.topic": "MyConnectorHistoryTopic",
"max.batch.size": "1024",
"snapshot.mode": "schema_only",
"decimal.handling.mode": "double"
}'
但这并不奏效,也许这根本不是最好的方法。在其他连接器中,我没有使用table.whitelist
选项,所以当我需要侦听新表时,我没有这个问题。
我的最后一个选择是删除这个连接器,并创建另一个连接器,使用这个新配置来监听新表(mydb.table3
)。问题是,如果我想从mydb.table3
中获得初始数据,我必须使用快照initial
来创建,但我不想从其他表mydb.table1、mydb.table2
的快照中生成所有消息。
此时还不支持对白名单/黑名单配置的更改。目前正在对此进行研究(请参见DBZ-175),我们希望在下一个版本中提供对此的预览支持。有一个待定的公关,这需要更多的工作,虽然。
在实现之前,最好的选择是设置一个连接器的新实例,它只捕获您感兴趣的其他表。这是以运行两个连接器为代价的(这两个连接器都将维护一个binlog读取器会话),但只要您不需要经常更改筛选器配置,就可以实现这一目的。
这看起来应该很简单,但我没有找到任何例子或留档。我有一个看起来像这样的Dynamodb表: 记录1:{姓名、电子邮件、项目[{product}、{item2}、{item3]} 记录2:(姓名、电子邮件、项目[{product}、{item2}、{item3]} 我需要能够更新items元素,即更新记录1中的item1对象。我可以通过硬编码list数组元素使用以下代码来实现这一点,但我不知道如何将
因此,我在DynamoDB中有一项: 我想添加一个新的属性到上述项目,属性是: 现在,我在JS中使用AWS-SDK这样做: 但是,我得到一个错误: ExpressionAttributeValue包含无效值:一个或多个参数值无效:AttributeValue不能包含key:newAttr的空字符串 所以如果我是这样就可以了,但我不希望这个新属性是一个字符串,我希望它是一个列表。 那么我做错了什么?
本文向大家介绍sharepoint项目。更新列表项,包括了sharepoint项目。更新列表项的使用技巧和注意事项,需要的朋友参考一下 示例
问题内容: 我有两个名为和的表。该表包含名为的列。 我需要从相应的表格中填充表格的列,以便表格中的每一行都有一个逗号分隔的列表,其中列出了学校名称的值。 我怎样才能做到这一点?我应该使用查询还是存储过程? 我只知道: SQL小提琴 输出需要如何 问题答案: 借助和 STUFF 来对值进行CONCATENATE,您可以轻松地用所需的结果更新表。 SQLFiddle演示
问题内容: 我使用bootstrap multi-select,我想使用ajax更新流选项 要在init中填充我的多选 然后在事件上我想用以下ajax更新我的选项列表 我尝试使用rebuild方法,但是创建后不会触发下拉菜单 使用萤火虫,我可以看到已生成列表,但选择后不会显示 问题答案: 在文档中,我可以阅读: .multiselect(’setOptions’,options)用于在初始化mul
问题内容: 这是Informix更新的正确语法吗? 我收到通用-201“发生语法错误”消息,但看不到出了什么问题。 问题答案: 您的语法错误是table1.code 改成 完整的代码