单手提煤气罐 2023-03-24 18:38 采纳率: 0%
浏览 17

在linux下,使用mongo-connector将mongodb的数据传输至es

背景:

在linux下,使用mongo-connector将mongodb的数据传输至es

遇到的问题:

使用如下命令启动mongo-connector

img


启动后,查看日志,发现提示如下错误:

img

求解

  • 写回答

1条回答 默认 最新

  • $encoding 2023-03-24 21:15
    关注

    这个错误可能是因为 MongoDB 的版本不同导致的。在一些老版本的 MongoDB 中,IDatabase 接口没有 collection_names() 方法。如果您的 MongoDB 版本比较老,可以尝试在 database_names() 方法后面使用 filter() 方法来获取指定数据库中的所有集合名称,例如:

    collections = client['mydatabase'].list_collection_names()
    my_collection = client['mydatabase'][list(filter(lambda x: x == 'mycollection', collections))[0]]
    

    将上面的代码中的 mydatabasemycollection 修改为您想要操作的数据库和集合名称即可。注意,如果指定的集合不存在,上面的代码将会引发 IndexError 异常,请确保您的集合名称是正确的。

    评论

报告相同问题?

问题事件

  • 创建了问题 3月24日