问题标签 [mongo-c-driver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1757 浏览

javascript - 什么是 MongoDB 中的“JavaScript with Scope”

在以下链接 中https://docs.mongodb.com/manual/reference/bson-types/ 它提到 JavaScript with Scope 是文档中可能的数据类型。

我的问题是:

(1) 什么是具有作用域的 JavaScript?

(2)它是MongoDB中的某种“内部”数据类型

“内部”是指用户不能使用它。除了上面链接中提到的以外,我没有找到有关此类型的更多信息

(3) 在 mongo c 驱动程序中,我找到了 Struct bson_value_t http://mongoc.org/libbson/1.0.0/bson_value_t.html 什么是“scope_data”缓冲区?

0 投票
0 回答
723 浏览

c++ - 将二进制数据附加到基本文档mongocxx c++中

我已经使用旧版驱动程序完成了一些工作,现在我正在升级到新的驱动程序。但我遇到了一个问题。

我正在尝试将 b_binary 附加到基本文档,但字节是 const *uint8_t。所以,我不能附加变量值,只是静态的。有没有办法将二进制数据附加到基本文档?

例子:

这不起作用,因为脱离上下文,ipv6 不再存在。请,如果有人可以帮助我,我将不胜感激!

0 投票
3 回答
5312 浏览

c++ - 如何将 pkg-config 添加到 Makefile?

我的 Makefile 看起来像这样:

这就是我在没有 Makefile 的情况下会做的事情:

现在由于导入 DrAPI,我也必须使用 Makefile 来包含该 API,但是如果没有 pkg​​-config,我会丢失 libmongoc-1.0。在这种情况下,我应该如何将 $(pkg-config --cflags --libs libmongoc-1.0) 添加到我的 Makefile 中以便它工作?

0 投票
1 回答
134 浏览

multithreading - mongo_c_driver 中不同集合的线程安全

我想同时为多个线程进行批量插入,每次每个线程将数据插入不同的集合中。我知道如果我将所有数据放入一个集合中不是线程安全的,但是如果每个线程都将数据插入到一个完全不同的集合中呢?在这种情况下,我可以假设它是线程安全的并且不必担心东西吗?

0 投票
1 回答
540 浏览

c++ - Windows LNK2001 中的 Mongocxx:无法解析的外部符号 __imp_mongoc_read_prefs_new

我已按照以下文档中的说明进行操作(包括构建 mongo-c-driver 的说明):https ://mongodb.github.io/mongo-cxx-driver/mongocxx-v3/installation/

我正在尝试构建提供的示例代码(使用 VS2015),为方便起见,我将复制粘贴:

我已经根据提供的项目设置指定了头文件和库包含目录。我还添加了 MONGOCXX_STATIC 和 BSONCXX_STATIC 预处理器定义。

最初,我将以下库添加到链接器设置中:libmongocxx.lib;libbsoncxx.lib;mongoc-static-1.0.lib;bson-1.0.lib;

当编译失败时,我尝试使用静态 bson 库(不知道为什么文档建议使用非静态库?),所以我的输入库现在如下:libmongocxx.lib;libbsoncxx.lib;mongoc-static-1.0.lib;bson-static-1.0.lib;

尽管我尽了最大的努力,并疯狂地谷歌搜索,我还是得到了大约 2000 个未解决的外部,我在下面复制并粘贴了一个示例:

看起来好像它来自 mongo c 驱动程序。我已经看过这篇 SO 文章,但我已经链接了如上所述的 mongoc-static-1.0.lib - 不幸的是,在这篇文章中几乎没有其他内容。编译器清楚地找到了所说的库(否则它会抱怨“未找到”错误),所以我只能认为我以某种方式错误地构建了库。

在这一点上我还要提到,我已经使用非静态库和 dll 成功构建并运行了代码 - 但是,非常希望避免使用 dll,因此我想尽可能使用静态库.

我现在已经多次阅读安装说明,我印象深刻的是以下内容:

如果您需要静态库,请务必在构建 libmongoc 时使用 --enable-static 配置选项。

但是,这似乎只适合在 Linux 中安装,我正在使用 CMake 在 Windows 中安装。我运行 CMake.exe -LH 以查看有哪些可用选项,希望能找到有关静态库的信息,但没有骰子。似乎没有必要的选项来构建静态库,因为当我安装 mongo-c-driver 时,我成功获得了 bson-static-1.0.lib 和 mongoc-static-1.0 库。

我发现自己不知所措!任何帮助将不胜感激,干杯。

0 投票
2 回答
255 浏览

mongodb - mongo c-driver bcon $ne 值不相等

我正在尝试向我的 BCON 查询附加一个要求,其中“tribe_type”不等于“initial-public”。

我的原始代码是并且有效:

当我添加第二部分时,它会编译,但是 mongo 匹配失败。

0 投票
0 回答
367 浏览

c - 未为 SSL 指定 PEM 文件时出现分段错误

我正在成功使用 monoc 1.2.0,我现在正尝试以两种模式添加启用 SSL 的连接:

  1. 只需要 SSL 没有证书检查
  2. 提供证书并验证它,包括主机名

对于 1 我得到分段错误:

对于 2 我得到: No suitable servers found ('serverselectiontryonce' set) 和错误代码:120414

服务器配置是:

并且证书具有正确的主机名(服务器 CN)。ssl=true代码在启动客户端的 url 中看起来有点像这样,并且pem_file对于模式 1 没有执行更新的行:

当我运行时: /mongo host/admin -u user -p pass --ssl --sslAllowInvalidCertificates 我可以登录但我看到: 2017-03-28T18:14:36.149+0300 W NETWORK [thread1] SSL peer certificate validation failed: self signed certificate 但我想这是因为我使用的是自签名并且ssl_opts.weak_cert_validation = TRUE应该处理它?

0 投票
1 回答
115 浏览

c - 如何从时间创建 OID

在 pymongo 中,您可以执行以下操作从时间创建 OID:

蒙古有类似的东西吗?

我看到有一个“ bson_oid_get_time_t() ”函数,但是有没有这个的反向函数,如果没有,如何在C中实现?

0 投票
1 回答
586 浏览

mongodb - mongoc driver: how to query based on ISOdate?

I have a simple query that worked on mongodb shell:

very simple, just trying to find any record that has date before 2015-11-03. Now i want to translate to similar code in mongoc driver, i have following code that doesn't work:

anyone knows the correct way to write in mongoc? I have looked through mongoc.org, no related example there.

0 投票
0 回答
141 浏览

mongodb - mongodb 和 ubuntu 服务器不断崩溃

我有一个 C 脚本,它解析一些数据并使用 mongoc 驱动程序将数据放入 mongodb。该脚本使用多线程同时打开3个线程。第一次运行没有问题,但不知何故我丢失了数据,不得不再次重新运行脚本。这次它使整个服务器崩溃,我不得不重新启动服务器。当服务器重新上线时,我注意到 dpath 中有不干净的 mongod.lock 文件,所以我运行修复命令,它再次崩溃。我还尝试启动 mongod,如果我将 dpath 设置为以前的 dpath,它也会崩溃(如果我设置为其他 dpath,则不会崩溃)。

我很困惑,我不知道这里出了什么问题,我有多大可能解决它?