#复制数据,从send_record集合到send_record_after
db.send_record.aggregate([
{ $match: {"createtime":{"$gt":1709222400000,"$lte":1709635537000}} },
{ $out: "send_record_after" }
]);
#创建集合
db.createCollection("集合名")
#重命名集合
db.集合名.renameCollection("新的集合名")
#删除集合
db.集合名.drop()
#创建索引,text为全文索引
db.send_record.createIndex({"number":1,"createtime":1,"interfaceNumber":1,"details.parameters":"text","details.result": "text"});
#查看集合的索引
db.send_record.getIndexes();
#查看内存
#resident :这个值是mongodb 本身使用的内存
#virtual: 这个值是mongodb 使用的虚拟内存的大小, 这里包含了linux 系统中mongodb 程序使用的 SWAP (如果开启了 ),以及使用的 linux file system 内存(包含分配和并未使用的)
db.serverStatus().mem;
#bytes currently in the cache后的值为内存大小
db.serverStatus().wiredTiger.cache;
#很多情况下,内存使⽤率⾼的原因是tcmalloc未及时归还内存⾄操作系统,这⼀块最⼤可能达到几十GB。关于tcmalloc未归还OS的内存大小,tcmalloc cache=pageheap_free_bytes+total_free_byte
db.serverStatus().tcmalloc;
db.serverStatus().tcmalloc.tcmalloc.formattedString;
#元数据占用空间
db.serverStatus().metrics.query.planCacheTotalSizeEstimateBytes;
#查询每个集合的索引数量
db.getCollectionNames().forEach(function(col) { print("Indexes for " + col + ": " + db.getCollection(col).getIndexes().length); });
mongodb命令集锦
于 2024-03-05 18:58:58 首次发布