MongoDB部署

系统环境:CentOS7   下载地址:http://mirrors.163.com/centos/7.6.1810/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso

MongoDB安装包版本:4.0.5  下载地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.5.tgz

在CentOS上安装软件基本就是一些命令,以下列出所使用的命令:

1、关闭防火墙

systemctl stop firewalld.service

systemctl disable firewalld.service

2、上传安装包并解压

tar zxvf mongodb-linux-x86_64-rhel70-4.0.5.tgz

3、剪切到/usr/local下

mv mongodb-linux-x86_64-rhel70-4.0.5 /usr/local/mongodb

4、创建MongoDB相应的文件夹

mkdir -p /data/db

mkdir -p /data/log

mkdir -p /data/conf 在当前文件夹下创建一个配置文件mongodb.conf,内容如下:

 dbpath=/data/db
#logpath=/data/log/mongodb.log
bind_ip=0.0.0.0
port=

5、进入/usr/local/mongodb/bin目前启动MongoDB

./mongod --config /data/conf/mongodb.conf

6、用浏览器访问如出现如下即为安装成功

MongoDB使用指南

使用的连接客户端是Robo 3T,下载地址:https://robomongo.org/download

如下为我在本地创建的集合:

如下为经常会使用到的查询语句:

 //查询姓名为小小的数据

 db.getCollection('student').find({"name":"xiaoxiao"})

 //并列查询and

 db.getCollection('student').find({"name":"xiaoxiao","age":})

 //查询age小于29

 db.getCollection('student').find({"age":{$lt:}})

 //或 查询语句

 db.getCollection('student').find({$or:[{"age":},{"age":}]})

 //limit查询

 db.getCollection('student').find({}).limit()

 //skip跳过前两条进行 查询

 db.getCollection('student').find({}).skip()

 //按age字段进行升序排序(1),降序排序(-1)

 db.getCollection('student').find({}).sort({"age":})

 //模糊查询name值带有xiao(类似于SQL中的like)

 db.getCollection('student').find({"name":{"$regex":"xiao"}})

过滤出status为A的数据并分别统计出每个name总的年龄:

 db.getCollection('student').aggregate([
{$match:{"status":"A"}},
{$group:{_id:"$name",total:{$sum:"$age"}}}
])

MongoDB监控

MongoDB监控可以使用自带的命令进行监控,当然也可以使用zabbix。

这里介绍下两个MongoDB自带的命令用于监控:

1、mongotop

2、mongostat

MongoDB调优

MongoDB数据库很多用于日志的记录、地理位置存储,所以在调优上主要涉及到比较多的是数据库索引。

如何创建MongoDB的索引呢?

db.getCollection('student').ensureIndex({"age":,"name":-},{background:true})

如上创建了age字段正序,name字段倒序的索引。

MongoDB部署、使用、监控及调优的更多相关文章

  1. 使用 Elastic Stack 来监控和调优 Golang 应用程序

    Golang 因为其语法简单,上手快且方便部署正被越来越多的开发者所青睐,一个 Golang 程序开发好了之后,势必要关心其运行情况,今天在这里就给大家介绍一下如果使用 Elastic Stack 来 ...

  2. DataPipeline |《Apache Kafka实战》作者胡夕:Apache Kafka监控与调优

    胡夕 <Apache Kafka实战>作者,北航计算机硕士毕业,现任某互金公司计算平台总监,曾就职于IBM.搜狗.微博等公司.国内活跃的Kafka代码贡献者. 前言 虽然目前Apache ...

  3. Kafka监控与调优

    Kafka监控 五个维度来监控Kafka 监控Kafka集群所在的主机 监控Kafka broker JVM的表现 监控Kafka Broker的性能 监控Kafka客户端的性能.这里的所指的是广义的 ...

  4. DataPipeline |ApacheKafka实战作者胡夕:Apache Kafka监控与调优

    https://baijiahao.baidu.com/s?id=1610644333184173190&wfr=spider&for=pc DataPipeline |ApacheK ...

  5. <JVM下篇:性能监控与调优篇>03-JVM监控及诊断工具-GUI篇

    笔记来源:尚硅谷JVM全套教程,百万播放,全网巅峰(宋红康详解java虚拟机) 同步更新:https://gitee.com/vectorx/NOTE_JVM https://codechina.cs ...

  6. Java系列笔记(4) - JVM监控与调优

    目录 参数设置收集器搭配启动内存分配监控工具和方法调优方法调优实例     光说不练假把式,学习Java GC机制的目的是为了实用,也就是为了在JVM出现问题时分析原因并解决之.通过学习,我觉得JVM ...

  7. JVM监控与调优

    目录 参数设置收集器搭配启动内存分配监控工具和方法调优方法调优实例     转:http://www.cnblogs.com/zhguang/p/java-jvm-gc.html光说不练假把式,学习J ...

  8. 实例详解 DB2 排序监控和调优

    实例详解 DB2 排序监控和调优http://automationqa.com/forum.php?mod=viewthread&tid=2882&fromuid=2

  9. [java] JVM监控与调优

    原文出处:http://www.cnblogs.com/zhguang/p/java-jvm-gc.html   光说不练假把式,学习Java GC机制的目的是为了实用,也就是为了在JVM出现问题时分 ...

  10. Tomcat性能调优-JVM监控与调优

    参数设置 在Java虚拟机的参数中,有3种表示方法用"ps -ef |grep "java"命令,可以得到当前Java进程的所有启动参数和配置参数: 标准参数(-),所有 ...

随机推荐

  1. ewasm项目初探

    为了改进EVM1.0,以太坊的新一代虚拟机项目ewasm (github.com/ewasm)将支持WebAssembly(wasm),wasm在性能,扩展性,开发工具,社区都更有优势.除以太坊外,一 ...

  2. oracle long 转varchar2

    函数: /* 其中in_rowid为行id,in_owner为数据库登陆的帐号名,in_table_name为数据库表名,in_column为数据库对应long类型的表字段名称 */ CREATE O ...

  3. NIO与IO的区别

    nio是new io的简称,从jdk1.4就被引入了.现在的jdk已经到了1.6了,可以说不是什么新东西了.但其中的一些思想值得我来研究.这两天,我研究了下其中的套接字部分,有一些心得,在此分享.  ...

  4. LA-5052 (暴力)

    题意: 给[1,n]的两个排列,统计有多少个二元组(a,b)满足a是A的连续子序列,b是B的连续子序列,a,b中包含的数相同; 思路: 由于是连续的序列,且长度相同,可以枚举一个串的子串,找出这个子串 ...

  5. Burpsuite实验(二)

    一.这次我们使用一下burpsuite的代理拦截功能. 图中的proxy是代理的选项,其中intercept是拦截的功能,在浏览器中请求的包,都经过它. 这是打开拦截时候的状态.forward是通过此 ...

  6. Java泛型和反射总结

    A a = (A)Class.forName(“pacage.A”).newInstance(); 这和你 A a = new A(): 是一样的效果. String className = “Exa ...

  7. NOIP2009 靶型数独

    传送门 这道题比我想象之中要暴力一些. 自己一开始有一份写9*9数独的代码,自己试了一下直接交上去只有40分.看来这样是肯定不行的.考虑优化,想在中间贪贪心啥的,但是难以保证正确性.最后学了一招,从数 ...

  8. jmeter+jenkins+ant部署持续集成测试

    原文地址:http://blog.csdn.net/kaluman/article/details/74535495 开头的注意事项: 1.所有的环境变量和代码,都需要使用英文的符号,变量之间都需要英 ...

  9. 标准WPS框架下的空间信息处理服务部署方法

    笔者第一篇博客里面曾介绍过将专题图制作功能发布为WPS,但随着后面的研究,才发现那时候发布的不是真正WPS框架下的服务,而只是通过Servlet将其发布为可调用的网络服务,所以今天再具体介绍一下真正的 ...

  10. 从ao神处偷取的头文件

    #include<bits/stdc++.h> using namespace std; #define ll long long #define ull unsigned long lo ...