一、数据库常用命令

1、Help查看命令提示

help
db.help();
db.yourColl.help();
db.youColl.find().help();
rs.help();

2、切换/创建数据库

use yourDB; 当创建一个集合(table)的时候会自动创建当前数据库

3、查询所有数据库

show dbs;

4、删除当前使用数据库

db.dropDatabase();

5、从指定主机上克隆数据库

db.cloneDatabase(“127.0.0.1”); 将指定机器上的数据库的数据克隆到当前数据库

6、从指定的机器上复制指定数据库数据到某个数据库

db.copyDatabase("mydb", "temp", "127.0.0.1");将本机的mydb的数据复制到temp数据库中

7、修复当前数据库

db.repairDatabase();

8、查看当前使用的数据库

db.getName();
db; db和getName方法是一样的效果,都可以查询当前使用的数据库

9、显示当前db状态

db.stats();

10、当前db版本

db.version();

11、查看当前db的链接机器地址

db.getMongo();

二、Collection聚集集合

1、创建一个聚集集合(table)

db.createCollection(“collName”, {size: 20, capped: 5, max: 100});//创建成功会显示{“ok”:1}
db.collName.isCapped();//判断集合是否为定容量

2、得到指定名称的聚集集合(table)

db.getCollection("account");

3、得到当前db的所有聚集集合

db.getCollectionNames();

4、显示当前db所有聚集索引的状态

db.printCollectionStats();

三、用户相关

1、添加一个用户

db.addUser("name");
db.addUser("userName", "pwd123", true); //添加用户、设置密码、是否只读

2、数据库认证、安全模式

db.auth("userName", "123123");

3、显示当前所有用户

show users;

4、删除用户

db.removeUser("userName");

四、索引

1、创建索引

db.userInfo.ensureIndex({name: 1});
db.userInfo.ensureIndex({name: 1, ts: -1});

2、查询当前聚集集合所有索引

db.userInfo.getIndexes();

3、查看总索引记录大小

db.userInfo.totalIndexSize();

4、读取当前集合的所有index信息

db.users.reIndex();

5、删除指定索引

db.users.dropIndex("name_1");

6、删除所有索引索引

db.users.dropIndexes();

五、修改、添加、删除集合数据

1、添加

//若新增的数据中存在主键 ,insert() 会提示错误,而save() 则更改原来的内容为新内容。
db.users.insert({name: ‘zhangsan', age: 25, sex: true});
db.users.save({name: ‘zhangsan', age: 25, sex: true});

添加的数据的数据列,没有固定,根据添加的数据为准

2、修改

db.users.update({age: 25}, {$set: {name: 'changeName'}}, false, true);
相当于:update users set name = ‘changeName' where age = 25;
db.users.update({name: 'Lisi'}, {$inc: {age: 50}}, false, true);
相当于:update users set age = age + 50 where name = ‘Lisi';
db.users.update({name: 'Lisi'}, {$inc: {age: 50}, $set: {name: 'hoho'}}, false, true);
相当于:update users set age = age + 50, name = ‘hoho' where name = ‘Lisi';

3、删除

db.users.remove({age: 132});

4、查询修改删除

db.users.findAndModify({
query: {age: {$gte: 25}},
sort: {age: -1},
update: {$set: {name: 'a2'}, $inc: {age: 2}},
remove: true
});
db.runCommand({ findandmodify : "users",
query: {age: {$gte: 25}},
sort: {age: -1},
update: {$set: {name: 'a2'}, $inc: {age: 2}},
remove: true
});

update 或 remove 其中一个是必须的参数; 其他参数可选。

参数 详解 默认值
query 查询过滤条件 {}
sort 如果多个文档符合查询过滤条件,将以该参数指定的排列方式选择出排在首位的对象,该对象将被操作 {}
remove 若为true,被选中对象将在返回前被删除 N/A
update 一个 修改器对象 N/A
new 若为true,将返回修改后的对象而不是原始对象。在删除操作中,该参数被忽略。 false
fields All fields
upsert 创建新对象若查询结果为空。 false

六、查看聚集集合基本信息

1、查看帮助 db.yourColl.help();

2、查询当前集合的数据条数 db.yourColl.count();

3、查看数据空间大小 db.userInfo.dataSize();

4、得到当前聚集集合所在的db db.userInfo.getDB();

5、得到当前聚集的状态 db.userInfo.stats();

6、得到聚集集合总大小 db.userInfo.totalSize();

7、聚集集合储存空间大小 db.userInfo.storageSize();

8、Shard版本信息 db.userInfo.getShardVersion();

9、聚集集合重命名 db.userInfo.renameCollection("users"); //将userInfo重命名为users

10、删除当前聚集集合 db.userInfo.drop();

七、其他

1、查询之前的错误信息

db.getPrevError();

2、清除错误记录

db.resetError();

最新文章

  1. linq lambda left join
  2. activemq jmsTemplate 发送消息速度太慢
  3. RichTextBoxEx2
  4. 单据状态BE构建
  5. mongodb子文档查询
  6. NGUI系列教程三
  7. ElasticSearch 学习记录之 分布式文档存储往ES中存数据和取数据的原理
  8. python scipy计算机数值库
  9. 7.C++类与封装的概念
  10. 设计模式 --> MVC,MVP 和 MVVM 的图示
  11. GC参考手册 —— GC 调优(命令篇)
  12. ab命令
  13. 用户代码与Spring的交互形式,你有总结过吗?
  14. 6.cookie、session,localStorage、sessionStorage
  15. python 错误: UnicodeDecodeError: 'ascii' codec can't decode byte 0xe4 in position 0: ordinal not in range(128)
  16. react-native android app名字 app包名、图标和启动图片设置
  17. 结对&词频统计
  18. Python3 CNN中卷积和池化的实现--限制为二维输入
  19. Adapter数据变化改变现有View的实现原理及案例
  20. jqPlot图表插件学习之ajax-json数据加载

热门文章

  1. [BZOJ4025]二分图(线段树分治,并查集)
  2. [BZOJ 3140] 消毒
  3. 【最大权闭合图】BZOJ1565-[NOI2009]植物大战僵尸
  4. Largest Smallest Cyclic Shift
  5. Train Problem I(模拟栈)
  6. 浅谈js对象及对象属性
  7. es进行聚合操作时提示Fielddata is disabled on text fields by default
  8. Educational Codeforces Round 6 F. Xors on Segments 暴力
  9. Web API使用记录系列(四)OAuth授权与身份校验
  10. Android Studio导入第三方库的三种方法