为什么80%的码农都做不了架构师?>>>   

参考文档:MongoDB 教程      MongoDB 3.4 中文文档

  1. 客户端驱动版本和服务器驱动版本要一致,要不然会报错误:Connection reset by peer。参考: MongoDB错误和使用总结2013-02-16(持续更新)    java.net.SocketException四大异常解决方案
  2. mongodb添加用户
#管理员root账户
db.createUser({user: "root",pwd: "123456",roles: [ "root", "userAdminAnyDatabase", "userAdmin", "dbOwner" ]})
#ops manager的数据库用户
db.createUser({user: "mongodbms",pwd: "123456",roles: [ "readWriteAnyDatabase", "dbAdminAnyDatabase", "clusterMonitor" ]})
#为test库添加读写权限的用户
db.createUser({user: "user1",pwd: "123456",roles: [ { role: "readWrite", db: "test" } ]
})

注意使用db.auth()时,用户名密码都需要用引号引起来。
mongodb内置角色:Built-In Roles

  1. mongodb中replica set的主备切换
  • 首先排除不需要竞选primary的secondary实例,进入不需要竞选的实例(mongod实例)中,执行如下命令
#冰冻此mongod实例,60秒内不参加内部选举工作
myShard_0:SECONDARY> rs.freeze(60)
  • shutdown此rs的primary节点
myShard_0:PRIMARY> rs.stepDown(15)

执行完成之后,会报错重连,此时连接后的状态就是SECONDARY了,等待选出primary节点即可。
参考:mongodb 复制集主节点切换方法

  1. mongodb中查看每一条记录的执行时间
  • 在shard的primary节点中运行
#获得当前profile的设置
db.getProfilingLevel()
#不记录操作耗时
db.setProfilingLevel(0)
#记录慢查询(耗时大于100ms的操作)
db.setProfilingLevel(1)
#记录所有的操作
db.setProfilingLevel(2)
  • 运行完成之后,查看操作耗时
#查询耗时大于500的操作
db.system.profile.find({millis:{$gt:500}})

参考:mongodb可以通过profile来监控数据 (mongodb性能优化)

  1. 从mongo的安装可以知道,mongo命令主要有mongod:启动集群实例,mongos:启动管理客户端连接的实例,mongo:进入mongo的命令行。
  2. 在mongodb的shard集群中,基于2dsphere,没法在find命令中使用:db.sz_user({loc:{$near:{……}}),这是mongodb的一个bug,会报错:use geoNear command rather than $near query,但是在非shard集群中是可以在find中使用$near。shard集群中使用runCommand是可以的,但是runCommand在高并发时,会停顿几秒,使用db.sz_user.aggregate($geoNear)能解决此问题。所以一句话,在shard集群中,$near没法用,runCommand高并发性能有问题,$geoNear才能完美解决此问题。
    参考:MongoDB geospatial query with find()
  3. 如果mongodb集群开启了shard,大量插入数据的时候,有可能trunks分配不是很均衡,但是等集群空闲的时候,会自动均衡所有的trunks。

转载于:https://my.oschina.net/cjun/blog/829692

mongodb——mongo笔记*相关推荐

  1. MongoDB学习笔记(3)- Mongo Shell 常用查询命令

    MongoDB学习笔记(3)- Mongo Shell 常用查询命令 本文所使用的MongoDB版本为 4.0.10 > db.version(); 4.0.10 一.find 命令进行简查询 ...

  2. MongoDB学习笔记(入门)

    MongoDB学习笔记(入门) 一.文档的注意事项: 1.  键值对是有序的,如:{ "name" : "stephen", "genda" ...

  3. MongoDB学习笔记【2】-- 试用

    大部分内容根据MongoDB官方手册整理:http://docs.mongodb.org/manual/contents/ 查看数据库 [root@slayer ~]# mongo MongoDB s ...

  4. MongoDB学习笔记(一) MongoDB介绍及安装

    系列目录 MongoDB学习笔记(一) MongoDB介绍及安装     MongoDB学习笔记(二) 通过samus驱动实现基本数据操作     MongoDB学习笔记(三) 在MVC模式下通过Jq ...

  5. PHP操作MongoDB学习笔记

    PHP操作MongoDB技術總結 <?php /** * PHP操作MongoDB学习笔记 */ //************************* //**   连接MongoDB数据库  ...

  6. MongoDB学习笔记一:MongoDB的下载和安装

    MongoDB学习笔记一:MongoDB的下载和安装 趁着这几天比較空暇,准备学习一下MongoDB数据库.今天就简单的学习了一些MongoDB的下载和安装.并创建了存储MongoDB的数据仓库. 将 ...

  7. MongoDB 学习笔记八 复制、分片、备份与恢复、监控

    MongoDB 学习笔记八 复制.分片.备份与恢复.监控 MongoDB复制(副本集) 什么是复制? MongoDB 复制原理 MongoDB 副本集设置 副本集添加成员 MongoDB 分片 分片 ...

  8. MongoDB学习笔记~对集合属性的操作

    $unset清除元素 请注意在单个数组元素上使用$unset的结果可能与你设想的不一样.其结果只是将元素的值设置为null,而非删除整个元素.要想彻底删除某个数组元素,可以用$pull 和$pop操作 ...

  9. 非关系型数据库MongoDB学习笔记

    MongoDB学习笔记   --周灿 创建数据库 use "databasename" 查看数据库 show dbs 给指定数据库添加集合和插入记录 db.集合名.insert({ ...

  10. linux下使用Mongodb命令笔记

    在工作中使用mongodb时的一些笔记整理. 1.连接mongodb mongo 远程主机ip或DNS:MongoDB端口号/数据库名 -u user -p password e.g.: mongo ...

最新文章

  1. 不同表结构数据迁移_数据结构:哈希 哈希函数 哈希表
  2. Linux 学习记录 四(Bash 和 Shell scirpt).
  3. git仓库相关知识01-安装和基本命令
  4. Android中的资源复用小技巧
  5. SAP Analytics Cloud嵌入到SAP Cloud for Customer的效果图
  6. 这场戏里,到底是谁脏了?
  7. hibernate h2变mysql_struts2-hibernate-mysql开发案例 -解道Jdon
  8. 整理Linux查看系统日志的一些经常使用命令
  9. “解救”外卖骑手,美团首次公开算法规则!
  10. 初解vue脚手架vue-cli,及demo示例(一)
  11. 一个小小的抽奖活动测试脚本(python2.7)
  12. iOS 中 UIView 和 CALayer 的关系
  13. vue学习-vuex状态
  14. 联想小新i1000拆机图解_联想小新笔记本拆机解析
  15. LINUX 下无线网卡 rtl8821CE/rtl8723de 驱动 无法驱动解决办法
  16. 第一次用idea写SSM框架的项目就遇到自动注入失败的问题
  17. 开源开放 | 面向家庭常见疾病的知识图谱(东南大学)
  18. numpy中的ndarray方法和属性
  19. Excel通过poi设置折线图样式
  20. html提交成功跳转页面,提交表单后跳转到想要的页面--jQuery form

热门文章

  1. php自动播放mp3,html5实现背景音乐的自动播放
  2. 活性(Liveness)
  3. Kubernetes Pod 健康检查机制 LivenessProbe 与 ReadinessProbe
  4. FileStatus类介绍
  5. MYSQL附近的人设计思路
  6. 数据治理-数据质量管理
  7. 【Error】pwntools 解决安装terminator后 unable to find a shell
  8. Android重难点解析——面试中可能被问到的那些问题
  9. JavaScript网页设计:用户登录页面
  10. lifestyle HTML5酷站欣赏