【MongoDB】mongodb | 部署 | 常用命令

一、概述

        基于mongodb的tcp连接无数据上报,服务器强踢监测。

        物联网项目,tcp协议,基于4G卡,设备由于某些原因会断开重连,但是tcp没有断开,导致tcp持续累加,浪费资源。

        建立机制: 当tcp超过3分钟没有数据交互时,服务器强踢。

        数据存储: 数据交互时需要更新最新的时间,写多读少,而且服务重启后tcp均会断开,用MySQL不划算;而mongodb的写性能还不错,就用mongodb了

二、部署

        基于docker部署,用的是bitnami/mongodb:7.0.14

        docker镜像来源: windows + docker 桌面 + 梯子 + 镜像search + 镜像pull + 镜像save

1、docker启动命令

docker run --name mongodb --restart=always -v /opt/mongodb/data:/data/db -p 0.0.0.0:27017:27017 -d bitnami/mongodb

三、常用命令

1、创建索引

db.tcp_link.createIndex({clientIp:1});
db.tcp_link.createIndex({iccid:1});
db.tcp_link.createIndex({serverIp:1});
db.tcp_link.createIndex({latestDataTime:1, weatherOnline: 1, serverIp: -1});

说明: db关键字,固定

tcp_link: 集合名称(表明)

clientIp: 字段

1: 排序(降序)

~~

 2、分组统计

db.tcp_link.aggregate([
    {
        $group: {
            _id: "$weatherOnline",  // 分组依据字段
            count: { $sum: 1 }  // 统计每个组的数量
        }
    }
]);

说明: db,aggregate都是关键字

weatherOnline: 字段

~~

 四、其他

1、基础概念

1)数据库,与MySQL差不多;不同的是,mongo建库更简单

2)集合,就是表

3)字段,就是字段;mongo支持动态字段,不需要提前定义,用哪些直接entity加字段即可

4)文档,就是一条记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值