MongoDB 是一个面向文档可扩展的高性能开源数据库,典型的应用场景有网页数据,缓存,代替文档存储等。
命令的记忆和使用是一门基本功,这里准备了速查表,可以做案头手册。
| 库操作 | |
| 切换或使用数据库 | use mymongodb |
|---|---|
| 看所有的库 | show dbs |
| 删除当前使用数据库 | db.dropDatabase() |
| 克隆所有的库到当前连接 | db.cloneDatabase(“192.160.1.1”) |
| 复制指定的库 | db.cloneDatabase(“sourcedb”,”targetdb”,”192.168.1.1”) |
| 查看当前数据库 | db.getName() |
| 当前 数据库 状态 | db.stats() |
| 当前数据库版本 | db.version() |
| 查看当前数据库的连接 | db.getMongo() |
| 用户操作 | |
| 添加用户 | db.addUser(“user_name”, “password”, true) |
| 用户认证 | db.auth(“username”, “password”) |
| 显示所有用户 | show users; |
| 删除用户 | db.removeUser(“username”); |
| 集合基本信息 | |
| 查询集合的数据条数 | db.myCollection.count(); |
| 查看数据空间大小 | db.myCollection.dataSize(); |
| 查看集合所在的数据库 | db.myCollection.getDB(); |
| 当前聚集的状态 | db.myCollection.stats(); |
| 当前集合的总大小 | db.myCollection.totalSize(); |
| 集合储存空间大小 | db.myCollection.storageSize(); |
| Shard版本信息 | db.myCollection.getShardVersion(); |
| 集合重命名 | db.myCollection.renameCollection(“targetCollection”); |
| 删除集合 | db.myCollection.drop(); |
| 集合数据增删改 | |
| 添加记录 | db.myCollection.save({mykey:”t_key”,myvalue:”t-value”}); |
| 删除记录 | db.myCollection.remove({mykey:”t_key”}); |
| 修改记录 | db.myCollection.update({condition: xx}, {$set: {field: ‘changefield’}}, false, true); |
| 查询并修改记录 | db.myCollection.findAndModify(query: {condition1: {gte: XX}}, sort: {condition2: -1}, update: {gte: XX}}, sort: {condition2: -1}, update: {set: {target1: 'yy'}, $inc: {target2: 2}}, remove: true}); |
| 集合数据查询 | |
| 查询所有记录 | db.myCollection.find(); |
| 查询第一条记录 | db.myCollection.findOne(); |
| 数据去重 | db.myCollection.distinct(“fieldname”); |
| 数值区间查询 | db.myCollection.find({numfield:{$gte:nn}}); |
| 字符串查询 | db.myCollection.find({targetfield:/ABC/}); |
| 指定字段查询 | db.myCollection.find({},{field1:’abc’,field2:nnn}); |
| 指定返回条数查询 | db.myCollection.find().limit(m).skip(n); |
| 排序 | db.myCollection.find().sort({targetfield:-1}); //降序 |
| 统计记录数 | db.myCollection.find({target: n }).count(); |
| 索引操作 | |
| 创建 | db.myCollection.ensureIndex({targetfield: 1}); |
| 查询所有索引 | db.myCollection.getIndexes(); |
| 查询所有索引大小 | db.myCollection.totalIndexSize(); |
| 查询索引信息 | db.myCollection.reIndex({targetfield: 1}); |
| 删除指定索引 | db.myCollection.dropIndex(“targetfield”); |
| 删除所有索引 | db.myCollection.dropIndexes(); |
| 辅助命令 | |
| 查询错误信息 | db.getPrevError(); |
| 清空错误信息 | db.resetError(); |
| 各种帮助信息 | help; db.help(); db.myCollection.help(); db.myCollection.find().help(); rs.help(); |
posted on
浙公网安备 33010602011771号