当前位置: 首页 > news >正文

docker 安装mongodb 虚拟机安装mongodb

生产环境直接安装比较好,以及使用集群环境,本文仅测试交流使用,我用来写分布式im测试使用:

nami-im: 分布式im, 集群 zookeeper netty kafka nacos rpc主要为gate(长连接服务) logic (业务) lsb (负载均衡)store(存储)

1.  mongodb特点

  1. 支持存储海量数据;(例如:直播中的打赏数据);
  2. 支持频繁的数据读写;(例如:游戏道具);
  3. 数据安全性不高,存在数据误差(丢失数据);
  4. mongoDB不支持多表操作,不支持事务;
  5. mongoDB使用Bson存储格式,支持动态字段管理;

2. mongoDB与mysql、redis对比:
    与redis对比:   

          1. redis纯内存数据库,内存不足时触发淘汰策略,mongoDB使用内存加磁盘的存储策略具有高扩展性;
          2. mongoDB使用Bson存储格式,支持动态字段管理方便扩展;
    与mysql对比
          1. mongoDB不支持多表操作,不支持事务;
          2. mongoDB使用Bson存储格式,支持动态字段管理;
    查询效率对比
         Redis > MongoDB > MySQL
3. github 地址:

GitHub - mongodb/mongo: The MongoDB Database

4. docker 下载mongo 4.4版本镜像

 docker pull mongo:4.4

5. docker命令安装:

# –auth:需要密码才能访问容器服务
docker run -itd --name mongo -v /docker/mongodb/data:/data/db -p 27017:27017 mongo:4.4 --auth

6. 进入mongo 添加账号:

 docker exec -it mongo mongo admin

7. 添加账号:

db.createUser({ user:'root',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},'readWriteAnyDatabase']});# 退出指令:
exit

8. 我安装的navicat for mysql 16 mongo db 不支持了。。。前面版本mongo db 也能用记得,用idea datagrip 测试的连接成功:


9. spring boot 配置mongo db

a. pom配置:

        <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId></dependency>

b. yml配置:

spring  data:# mongo 配置mongodb:uri: mongodb://192.168.164.146:27017/nami-imusername: rootpassword: 123456authentication-database: adminauto-index-creation: true  

c. model类,mongotemplate 使用后续再更新

相关文章:

docker 安装mongodb 虚拟机安装mongodb

生产环境直接安装比较好&#xff0c;以及使用集群环境&#xff0c;本文仅测试交流使用&#xff0c;我用来写分布式im测试使用&#xff1a; nami-im: 分布式im, 集群 zookeeper netty kafka nacos rpc主要为gate&#xff08;长连接服务&#xff09; logic &#xff08;业务&…...

在SockJS+Spring Websocket中convertAndSendToUser中的“用户”来自哪里?

目录 一、前言二、Principal三、使用 一、前言 我们知道可以使用客户端订阅的主题前缀从 stomp 服务器向客户端发送消息&#xff0c;例如 /topic/hello。我们还知道我们可以向特定用户发送消息&#xff0c;因为 spring 提供了convertAndSendToUser(username, destination, mes…...

【软件测试】我的2023面试经验谈

最近行业里有个苦涩的笑话&#xff1a;公司扛过了之前的三年&#xff0c;没扛过摘下最近的一年&#xff0c;真是让人想笑又笑不出来。年前听说政策的变化&#xff0c;大家都满怀希望觉得年后行情一片大好&#xff0c;工作岗位激增&#xff0c;至少能有更多的机会拥抱未来。然而…...

SpringBoot 整合JDBC

SpringData简介 Sping Data 官网&#xff1a;https://spring.io/projects/spring-data数据库相关的启动器 &#xff1a;可以参考官方文档&#xff1a;https://docs.spring.io/spring-boot/docs/2.6.5/reference/htmlsingle/#using-boot-starter 整合JDBC 创建测试项目测试数据…...

TypeScript使用npm安装报错问题

问题如图&#xff1a; 问题原因&#xff1a; 权限不足导致&#xff0c;可以输入如下命令&#xff1a; sudo npm install i -g typescript该命令会要求输入登录密码相关&#xff0c;稍等片刻&#xff0c;即可安装成功。检测安装的命令&#xff1a; tsc -v...

2023国赛数学建模思路 - 复盘:人力资源安排的最优化模型

文章目录 0 赛题思路1 描述2 问题概括3 建模过程3.1 边界说明3.2 符号约定3.3 分析3.4 模型建立3.5 模型求解 4 模型评价与推广5 实现代码 建模资料 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 描述 …...

学习pytorch 3 tensorboard的使用

tensorboard的使用 1. 安装2. add_scalar 查看函数图形3. 查看结果4. add_image() 查看训练步骤中间结果的图片 1. 安装 pytorch conda环境 pip install tensorboard pip install opencv-python2. add_scalar 查看函数图形 常用来查看 train val loss等函数图形 from torch…...

Linux 命令篇

一、启动网络命令 ip addr 查看网卡信息 service network start 启动网卡 service network stop 关闭网卡 service network restart 重启网络 二、pwd 命令 查看当前目录的路径 linux 下所有的绝对路径都是从根目录 "/" 开始 root:是linux下root用户的根目…...

OpenCV-SIFT算法详解

系列文章目录 文章目录 系列文章目录引言一、高斯金字塔二、高斯差分金字塔三、特征点处理四、特征点描述子总结 引言 SIFT算法是为了解决图片的匹配问题&#xff0c;想要从图像中提取一种对图像的大小和旋转变化保持鲁棒的特征&#xff0c;从而实现匹配。这一算法的灵感也十分…...

Java中的接口到底是什么?

要说Java的【接口】&#xff0c;可以将其类比为现实生活中的一种约定或规范。在Java中&#xff0c;接口定义了一组方法的集合&#xff0c;但没有提供这些方法的具体实现。 你可以将接口看作是一个合同&#xff0c;它规定了一个类必须实现的一组方法。这些方法描述了类所需具备…...

Jpa与Druid线程池及Spring Boot整合(一): spring-boot-starter-data-jpa 搭建持久层

Jpa与Druid线程池及Spring Boot整合(一) Jpa与Druid线程池及Spring Boot整合(二)&#xff1a;几个坑 附录官网文档&#xff1a;core.domain-events域事件 (一)Jpa与Druid连接池及Spring Boot整合作为持久层,遇到系列问题,下面一 一记录&#xff1a; pom.xml 文件中加入必须的…...

helm部署vmalert

先决条件 安装以下软件包&#xff1a;git, kubectl, helm, helm-docs&#xff0c;请参阅本教程。 在 CentOS 上启用 snap 并安装 helm 启用 snapd 使用以下命令将 EPEL 存储库添加到您的系统中&#xff1a; sudo yum install epel-release 按如下方式安装 Snap&#xff1…...

加工厂数字孪生3D可视化展示系统重塑管理模式

近年来“数字化转型”成立各行业聚焦的发展方向&#xff0c;在工业制造领域&#xff0c;智慧工业数字孪生可视化平台作为一种新型的技术手段&#xff0c;或将成为助力企业跑赢数字化转型最后一公里。 提高生产效率 传统的生产方式往往需要大量的人工干预&#xff0c;不仅耗时耗…...

php从静态资源到动态内容

1、从HTML到PHP demo.php:后缀由html直接改为php,实际上当前页面已经变成了动态的php应用程序脚本 demo.php: 允许通过<?php ... ?>标签,添加php代码到当前脚本中 php标签内部代码由php.exe解释, php标签之外的代码原样输出,仍由web服务器解析 <!DOCTYPE html>…...

JavaScript:模块化【CommonJS与ES6】

在 JavaScript 编程中&#xff0c;随着项目的复杂性增加&#xff0c;代码的组织和管理变得至关重要。模块化是一种强大的编程概念&#xff0c;它允许我们将代码划分为独立的模块&#xff0c;提高了可维护性和可扩展性。本文将详细介绍 CommonJS 和 ES6 模块&#xff0c;帮助你理…...

Redis—持久化

这里写目录标题 AOF三种写回策略写回策略的优缺点AOF 重写机制AOF后台重写AOF优缺点使用命令 RDBRDB 持久化的工作原理执行快照时&#xff0c;数据能被修改吗RDB 持久化的优点RDB 持久化的缺点 混合持久化大key对持久化的影响 AOF 保存写操作命令到日志的持久化方式&#xff0…...

【设计模式】代理模式

在代理模式&#xff08;Proxy Pattern&#xff09;中&#xff0c;一个类代表另一个类的功能。这种类型的设计模式属于结构型模式。 在代理模式中&#xff0c;我们创建具有现有对象的对象&#xff0c;以便向外界提供功能接口。 介绍 意图&#xff1a;为其他对象提供一种代理以…...

mac arm 通过brew搭建 php+nginx+mysql+xdebug

1.安装nginx brew install nginx //安装brew services start nginx //启动2.安装php brew install php7.4 //安装export PATH"/opt/homebrew/opt/php7.4/bin:$PATH" //加入环境变量 export PATH"/opt/homebrew/opt/php7.4/sbin:$PATH"brew serv…...

软信天成:告别手动编码,实现智能自动化云数据管理

数字化转型浪潮之下&#xff0c;各个企业都在大力投资新的基于云的流程、平台和环境&#xff0c;以期获取可扩展性、弹性、敏捷性和成本效益等优势。 这些趋势要求企业IT部门能够帮助组织&#xff0c;在对分析进行现代化改造的过程中达到云就绪或云优先状态。事实上&#xff0…...

易基因:ChIP-seq等揭示转录因子NRF1调控原始生殖细胞发育、增殖和存活的表观遗传机制|科研进展

大家好&#xff0c;这里是专注表观组学十余年&#xff0c;领跑多组学科研服务的易基因。 原始生殖细胞&#xff08;Primordial germ cell&#xff0c;PGC&#xff09;是生殖细胞前体&#xff0c;可以产生卵母细胞和精子&#xff0c;确保生命延续。尽管PGC特化&#xff08;PGC …...

【动力心法】别把 PWM 当成魔法!撕碎理想执行器的线性幻觉,论“静摩擦”与“前馈补偿”的绝对镇压

摘要&#xff1a;在纯粹的数学世界里&#xff0c;只要有输入&#xff0c;就必然有输出。但在由钢铁、齿轮、密封圈和润滑油构成的物理世界中&#xff0c;能量必须先缴纳极其昂贵的“过路费”。无数软件开发者迷信于 PID 的数学反馈&#xff0c;天真地以为微小的误差能换来微小的…...

如何理解 WeakSet 不可遍历且没有 size 属性的设计原因

WeakSet 不提供 size 和遍历能力&#xff0c;因其设计目标是“弱存在性登记册”&#xff0c;仅通过 has() 判断对象是否尚未被 GC 回收&#xff1b;size 不稳定、遍历会引发强引用&#xff0c;故规范禁止 clear、迭代器等操作&#xff0c;且只接受对象类型。WeakSet 为什么连 s…...

Spring AI(阿里 Graph)与 LangGraph 实战对比:从开发到部署的全流程解析

1. 环境搭建与依赖管理 第一次接触Spring AI&#xff08;阿里 Graph&#xff09;和LangGraph时&#xff0c;环境配置往往是最让人头疼的环节。记得去年我在一个金融项目上尝试集成大模型能力&#xff0c;光是环境依赖就折腾了两天。下面分享我的踩坑经验&#xff0c;帮你少走弯…...

SQL如何处理包含NULL分组的聚合计算_NULLS LAST排序技巧

SQL中NULL在GROUP BY中被视为相同值而归为一组&#xff0c;但业务上“未填”与“明确为空”需用CASE WHEN区分&#xff1b;ORDER BY NULLS LAST兼容性差&#xff0c;MySQL 5.7需用IF模拟&#xff1b;聚合函数自动忽略NULL&#xff0c;AVG全NULL时返回NULL而非0&#xff1b;WHER…...

如何永久保存微信聊天记忆:WeChatMsg数据导出与智能分析全攻略

如何永久保存微信聊天记忆&#xff1a;WeChatMsg数据导出与智能分析全攻略 【免费下载链接】WeChatMsg 提取微信聊天记录&#xff0c;将其导出成HTML、Word、CSV文档永久保存&#xff0c;对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/…...

JavaScript中CSSContain属性减少DOM局部重排范围

CSS contain属性是浏览器优化机制&#xff0c;通过声明元素自包含来限制重排重绘范围&#xff1b;支持layout、paint、style等值&#xff0c;strict为最强隔离&#xff0c;JavaScript可动态设置但需注意兼容性与使用陷阱。CSS Contain 属性本身不是 JavaScript 的属性&#xff…...

绍兴GEO优化,亲测3家公司复盘

开篇&#xff1a;定下基调在AI生成式引擎重塑信息获取方式的今天&#xff0c;GEO&#xff08;生成式引擎优化&#xff09;已成为企业建立数字信任、抢占精准流量的核心战场。绍兴作为民营经济活跃的区域&#xff0c;企业对高效、落地的GEO优化服务需求日益迫切。本次测评旨在通…...

深度解析Blender3mfFormat插件:3MF格式导入导出实战指南

深度解析Blender3mfFormat插件&#xff1a;3MF格式导入导出实战指南 【免费下载链接】Blender3mfFormat Blender add-on to import/export 3MF files 项目地址: https://gitcode.com/gh_mirrors/bl/Blender3mfFormat Blender3mfFormat是一款专为Blender设计的3MF文件导入…...

Rebus扩展开发指南:如何编写自定义传输、序列化和中间件

Rebus扩展开发指南&#xff1a;如何编写自定义传输、序列化和中间件 【免费下载链接】Rebus :bus: Simple and lean service bus implementation for .NET 项目地址: https://gitcode.com/gh_mirrors/re/Rebus Rebus是一个为.NET平台设计的轻量级服务总线实现&#xff0…...

从模板库到函数调用:解锁CODESYS组件依赖与2小时掉线限制的实战指南

1. 为什么你的CODESYS Runtime总在2小时后掉线&#xff1f; 很多开发者在使用CODESYS开发工业控制项目时&#xff0c;都会遇到一个让人头疼的问题——Runtime运行2小时后就会自动断开连接。这个问题其实源于CODESYS的试用保护机制。官方默认配置会对未授权的组件进行时间限制&a…...