0.1、安装
背景:之前公司一直用mongodb提供的msi安装包进行安装部署工作,经过一段时间的实验发现存在安装成功率较低、步骤复杂、需要重启等问题,所以为了简化mongodb的安装,本文提供MongoDB绿色版安装包,版本号为4.2.9(支持windows2016的最新版本),经过测试可以在windows server2008R2、2012R2、2016版本上使用,基本涵盖了公司各项目服务器系统的版本。
下面以windows server 2016上为例,介绍安装方式:
安装之前先将mongodb压缩包拷贝到非系统盘,以D盘为例,绿色版mogodb目录结构如下
安装脚本为,因为时间关系并没有写的很完善,希望大家自行改善:
@echo off
::获取当前文件所在的目录的绝对路径
set "thispath=%~dp0"
::删除之后的路径分隔符号“\”
set "thispath=%thispath:~0,-1%"
::echo thispath:%thispath%
::读取path环境变量到自定义变量中
set mypath="%path%"
::把path环境变量写入临时文件中,以备后续使用findstr命令进行查找
echo %mypath% > "%thispath%\temp.txt"
::在临时文件中查找有没有当前路径
find "%thispath%" "%thispath%\temp.txt" && echo "already have the mongo path" || setx /m "path" "%thispath%;%path%"
::删除临时文件
del "%thispath%\temp.txt"
mongod --config "%thispath%\mongo.conf" --install --serviceName "MongoDB"
echo install success
修改D:\MongoDB\bin下的mongo.conf文件,注意检查”dbpath“以及”path“的值是否符合mongodb绿色版安装包实际目录
配置文件:
# mongod.conf
# for documentation of all options, see:
# http://docs.mongodb.org/manual/reference/configuration-options/
# Where and how to store data.
storage:
dbPath: D:\MongoDB\data
journal:
enabled: true
# engine:
# mmapv1:
# wiredTiger:
wiredTiger:
engineConfig:
cacheSizeGB: 10
# where to write logging data.
systemLog:
destination: file
logAppend: true
path: D:\MongoDB\logs\mongod.log
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0
#processManagement:
security:
authorization: enabled
#operationProfiling:
#replication:
#sharding:
## Enterprise-Only Options:
#auditLog:
#snmp:
右键以管理员权限运行D:\MongoDB\bin目录下的install.bat安装包,执行成功后,打开services.msc找到”MongoDB“服务,手动启动该服务
通过浏览器访问http://127.0.0.1:27017,如下图所示
到此MongoDB绿色版安装完成。
附件: mongodb4.2.9 zip
0.2 关键配置
0.2.1、内存限制
官网:https://docs.mongodb.com/v4.2/reference/configuration-options/#storage.wiredTiger.engineConfig.cacheSizeGB
WiredTiger数据引擎内存缓存限制,推荐大于8(GB)
storage:
wiredTiger:
engineConfig:
cacheSizeGB: 8
官网:https://docs.mongodb.com/v4.2/reference/parameters/#param.maxIndexBuildMemoryUsageMegabytes
索引内存限制,推荐大于300(MB)
setParameter:
maxIndexBuildMemoryUsageMegabytes: 300
0.3 工具
工具选用mongodb官方绿色工具,版本号1.22.1
0.3.1、连接
0.3.2、基本信息查看
左边选中要查看的库–集合(表),右面选中”Aggregations“标签,该标签可以基本掌握如
0.3.3、查询数据
(1)查询loopid=100的数据
{loopId:100}
(2) <,>,>=,<=,!=不等于查询,查询loopid=100且时间大于2020-09-11T16:00:00.000+00:00且小于2020-09-21T16:00:00.000+00:00的数据
{$and:[{loopId:100},{timeFlag:{$gt:new Date("2020-09-11T16:00:00.000")}},{timeFlag:{$lte:new Date("2020-09-21T16:00:00.000")}}]}
"field" : {$gt: value } // 大于: field > value
"field" : { $lt: value }// 小于: field < value
"field" : { $gte: value } // 大于等于: field >= value
"field" : { $lte: value } // 小于等于: field <= value
"field" : { $ne: value } // 不等于: field != value
$and://且
$or://或
(3)排序查询
{timeFlag:-1,_id:1}//-1为降序、1为升序
0.4 基本命令
登录
mongo --host ip -u sinocontrol -p
查看已有数据库
show dbs
切换数据库
use 数据库名
查看当前数据库
db