随笔分类 - MongoDB/BSON
摘要:使用c访问mongodb,需要用到mongodb c driver。c++的driver也是基于c driver封装的。 在使用c driver访问mongodb时,需要与bson打交道,不过c driver访问bson有几点需要注意的,不然会导致报错,或者找不到数据。 迭代器使用后的有效性 在mo
阅读全文
摘要:这篇文章 mongodb使用内存和硬盘特性 我们介绍过mongodb删除数据后,并不会释放磁盘空间。大部分数据库为了性能都会这样做,比如mysql也是。不过mysql可以整理磁盘空间,把空闲的磁盘释放掉,还给操作系统,但是mongodb却不会。虽然说mongodb也有整理磁盘的接口调用(compac
阅读全文
摘要:一 不存在插入,存在不做任何处理。 db.companies.updateOne( {"company": "test"}, { $setOnInsert: { "name": "nameVal2", ... } }, { upsert: true } ) {"company": "test"}是匹
阅读全文
摘要:python链接mongodb需要指定数据库 import pymongo monclient = pymongo.MongoClient("mongodb://用户名:密码@192.168.10.200:27017/数据库名") mondb = monclient["数据库名"] moncol =
阅读全文
摘要:连接数据库 获取mongoc_cursor_t* cursor 循环获取数据,存入bson_t const bson_t *doc = nullptr; while (mongoc_cursor_next(cursor, &doc)) 获取迭代器 上面只是获取了对应的文本,需要设置成迭代器才能使用
阅读全文
摘要:使用官方提供的编译方式,编译完成后,发现非常大 ls -lh mongo mongod -rwx . 1 root root 1.2G 3月 31 13:53 mongo -rwx . 1 root root 3.6G 3月 31 13:54 mongod 这是因为附带了调试信息,可以使用file
阅读全文
摘要:第一次安装mongodb后,需要增加一个账户,如果创建账户的时候报这个错误,是因为启动mongod的时候,指定的配置文件mongodb.conf中,需要先用noauth = true启动,注释掉auth = true
阅读全文
摘要:运行mongo use databasename 进入你的数据库 db.auth("root","root_pwd") 返回1表示成功,就可以操作mongodb了
阅读全文
摘要:2019-11-28T10:50:47.732+0000 I STORAGE [initandlisten] exception in initAndListen: DBPathInUse: Unable to lock the locfile: /var/mongodb/db/mongod.loc
阅读全文
摘要:mongodump -h 127.0.0.1 --collection cname --db dname --authenticationDatabase uname -u uname -h指定host 127.0.0.1 --db指定数据库名dname --collection指定的集合名字cna
阅读全文
摘要:初次使用mongodb的时候,都会遇到mongodb占用内存过高或者占用磁盘空间不释放的问题。仔细阅读过官方文档就会清楚,为了高性能,mongodb会尽量减少io操作,用空间换时间,对内存和磁盘的大量占用是必须的,我们没有必要刻意的限制它。 内存 https://www.mongodb.com/co
阅读全文
摘要:如果我们用python插入一条内容,里面有一个整数 dict = { "name": "test", "num": 1} col.insert_one(dict) 得到的结果如下 { "name": "test", "num": NumberInt("1") } 如果是这样书写 dict = { "
阅读全文