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

记一次完整的MongoDB环境配置实录

写在前面最近项目中需要用到MongoDB本以为是个简单的安装配置没想到一路踩坑不断从下载MongoDB到最终在MCPModel Context Protocol中正常使用整整折腾了一天。为了不让后来者重蹈覆辙特将此过程完整记录下来希望能帮到同样遇到这些问题的朋友。第一章一切的开端——安装MongoDB1.1 下载与安装去MongoDB官网下载社区版这一步倒是很顺利直接下一步下一步安装完成。默认安装路径为textC:\Program Files\MongoDB\Server\8.0\1.2 第一次打击Navicat版本过低安装完MongoDB兴冲冲打开Navicat准备连接结果报错textUnable to load MongoDB plugin查看Navicat版本发现是好几年前的旧版本不支持新版MongoDB。解决方案卸载旧Navicat下载最新版Navicat 16。至于激活嘛...你懂的。第二章Navicat破解之旅懂的都懂这一步就不详细展开了流程大致是下载Navicat 16安装包下载激活工具注意来源安全性断网安装激活成功一定要按照步骤来做第三章连接MongoDB发现新问题3.1 无需认证就能连接Navicat成功连接MongoDB后发现一个问题居然没有设置用户名和密码直接就能连上这在开发环境还行但项目要求要有安全认证于是开始研究如何给MongoDB设置账号密码。3.2 按照教程执行mongo命令...打开命令行输入mongo结果提示textmongo 不是内部或外部命令也不是可运行的程序或批处理文件。一脸懵逼...第四章MongoDB Shell的发现第一个大坑4.1 为什么没有mongo命令经过一番搜索终于明白MongoDB 6.0及以上版本Shell是独立安装的不再集成在安装包中这个变化坑了不少人。4.2 下载MongoDB Shell下载地址https://www.mongodb.com/try/download/shell选择Windows版本下载安装时我改到了D盘textD:\Program Files\mongosh4.3 配置环境变量新建系统变量MONGOSH_HOME D:\Program Files\mongosh\bin在Path中添加%MONGOSH_HOME%配置完成后打开新命令行输入mongosh终于成功进入MongoDB ShelltextCurrent Mongosh Log ID: xxxxx Connecting to: mongodb://127.0.0.1:27017 ... test第五章设置MongoDB账号密码5.1 创建超级管理员在mongosh中执行以下命令javascriptuse admin db.createUser({ user: root, pwd: 你的密码, roles: [{ role: root, db: admin }] })5.2 验证用户创建成功执行show users查看javascript[ { _id: admin.root, user: root, db: admin, roles: [ { role: root, db: admin } ] } ]5.3 创建项目数据库用户为具体项目创建专用用户javascriptuse myproject db.createUser({ user: projectUser, pwd: projectPassword, roles: [{ role: readWrite, db: myproject }] })第六章配置MongoDB安全认证第二个大坑6.1 发现问题还是可以免密登录用户创建好了但测试发现还是可以不用密码直接连接MongoDB。这是因为MongoDB默认不开启认证需要修改配置文件。6.2 找不到mongod.cfg第三个大坑在安装目录找了半天没找到mongod.cfg。网上说的路径是textC:\Program Files\MongoDB\Server\8.0\bin\mongod.cfg但我的就是没有解决方案通过Windows服务查找按Win R输入services.msc找到MongoDB Server服务右键→属性查看可执行文件的路径看到--config C:\Program Files\MongoDB\Server\8.0\bin\mongod.cfg原来文件是存在的只是被隐藏了或者我没仔细看。按这个路径终于找到了6.3 修改配置文件用管理员身份打开记事本编辑mongod.cfg找到yaml#security:修改为yamlsecurity: authorization: enabled注意缩进security:前面不能有空格authorization:前面要有两个空格。6.4 重启MongoDB服务bashnet stop MongoDB net start MongoDB6.5 测试认证登录bashmongosh admin -u root -p输入密码后成功登录说明认证生效了第七章启动MongoDB服务的两种方法第四个大坑在配置过程中我发现很多人包括我自己对如何正确启动MongoDB服务存在误解。这里详细说明两种方式方法一命令行临时启动仅用于测试bashmongod --dbpath D:\data\db特点与坑点优点简单直接适合快速测试致命缺点关闭命令窗口服务就停止了。我之前就犯过这个错配置好账号、修改完mongod.cfg后发现用Navicat还是连不上。折腾半天才意识到我一直在用命令行窗口临时运行根本没把MongoDB注册成Windows服务修改的配置文件也没生效。方法二注册为Windows服务推荐这才是正确且方便的姿势。以管理员身份运行CMD执行安装服务bashmongod.exe --logpath D:\data\log\mongod.log --logappend --dbpath D:\data\data --directoryperdb --serviceName MongoDB --install操作服务bashnet start MongoDB # 启动服务 net stop MongoDB # 停止服务常见问题解决权限不足执行net start MongoDB时报错“发生系统错误 5。拒绝访问”。解决务必以“管理员身份”打开命令提示符。服务无法启动报错“MongoDB 服务无法启动”。原因可能是上次非正常关闭导致数据文件锁死。解决找到数据目录--dbpath指定的文件夹删除mongod.lock文件然后重启服务。配置文件不生效只有通过Windows服务运行的方式才会读取mongod.cfg配置文件。如果你是用命令行临时启动的修改配置文件是没用的。第八章MCP集成第五个大坑8.1 配置MCP连接最后一步在MCPModel Context Protocol中使用MongoDB。运行MCP工具提示textPlease enter a MongoDB connection string (Default: mongodb://localhost/):8.2 连接字符串拼写错误第六个大坑我输入了textmongodb://root:密码loaclhost:27017/admin结果报错textgetaddrinfo ENOTFOUND loaclhost Failed to connect to MongoDB: MongoServerSelectionError: getaddrinfo ENOTFOUND loaclhost仔细一看把localhost拼成了loaclhosta和c顺序错了。这个错误真的太隐蔽了不仔细看根本发现不了8.3 正确的连接字符串textmongodb://root:密码localhost:27017/admin?authSourceadmin参数说明localhost主机名注意拼写27017MongoDB默认端口admin认证数据库?authSourceadmin指定认证源8.4 成功连接修正拼写后MCP成功连接到MongoDB终于大功告成第九章常用命令速查表命令说明show users查看当前数据库的用户db.changeUserPassword(用户名, 新密码)修改密码db.updateUser(用户名, {pwd: 新密码, roles: [...]})更新用户信息db.dropUser(用户名)删除用户db.auth(用户名, 密码)手动认证net start MongoDB启动MongoDB服务net stop MongoDB停止MongoDB服务mongosh admin -u 用户名 -p用账号登录MongoDB第十章用户角色说明角色说明root超级管理员所有权限readWrite读写指定数据库read只读指定数据库dbAdmin数据库管理创建索引等userAdmin用户管理clusterAdmin集群管理需在admin库第十一章配置文件位置汇总MongoDB服务配置文件C:\Program Files\MongoDB\Server\版本号\bin\mongod.cfgMongoDB Shell安装路径独立安装通常为D:\Program Files\mongosh\bin数据文件默认路径C:\Program Files\MongoDB\Server\版本号\data\日志文件默认路径C:\Program Files\MongoDB\Server\版本号\log\总结踩坑汇总遇到的坑Navicat版本太低→ 下载最新版并破解找不到mongo命令→ MongoDB 6.0需要独立安装mongosh找不到配置文件→ 通过Windows服务查找确切路径认证不生效→ 修改mongod.cfg启用authorization启动方式混淆→ 区分临时启动和服务化运行服务启动权限不足→ 以管理员身份运行CMD连接字符串拼写错误→ localhost别写成loaclhost完整流程text安装MongoDB → 安装Navicat(新版) → 安装mongosh → 创建用户 → 修改配置文件启用认证 → 注册为Windows服务 → 重启服务 → 测试认证登录 → MCP配置连接字符串 → 成功最终心得MongoDB的配置看似简单但细节真的很多。从版本兼容性到认证配置从命令行操作到服务化管理每一步都可能遇到坑。特别是版本变化6.0以后mongosh独立安装这个变化坑了很多人拼写错误localhost写成loaclhost这种错误真的太隐蔽了服务化运行一定要用Windows服务方式运行否则配置文件不生效希望这篇踩坑日记能帮到正在配置MongoDB的你如果对你有帮助欢迎点赞收藏有问题可以在评论区交流

相关文章:

记一次完整的MongoDB环境配置实录

写在前面 最近项目中需要用到MongoDB,本以为是个简单的安装配置,没想到一路踩坑不断,从下载MongoDB到最终在MCP(Model Context Protocol)中正常使用,整整折腾了一天。为了不让后来者重蹈覆辙,特…...

P15755 [JAG 2025 Summer Camp #1] JAG Box

传送门 题目描述 JAG Box 是一种目前在全世界流行的普通长方体盒子。共有 NNN 个 JAG Box。对于每个 i1,2,…,Ni 1, 2, \ldots, Ni1,2,…,N,第 iii 个盒子有一个整数重量 AiA_iAi​。 你将通过重复选择一个剩余的盒子并将其插入当前堆叠的最底部来建造一个垂直堆…...

投流跑不动、ROI上不去?别只怪出价,90%的问题都出在素材上

投流越投越亏?出价拉满、定向精准,却依然冷启动失败、转化惨淡?别再内耗投放技巧了——90%的投流困境,根源都在素材!对投流而言,素材才是核心引擎,出价、定向只是辅助。平台算法核心看点击率、完…...

Spring AI 基础使用与介绍

一、Spring AI 是什么 Spring AI 是 Spring 官方推出的 AI 应用开发框架,用于简化 Java 后端对接大模型 API 的开发流程。 核心作用:统一对接各种大模型(豆包、通义千问、文心一言、GPT 等)简化 AI 接口调用代码支持 RAG 知识库、…...

三个月燕窝口服液裂变2000万背后的商业逻辑

大家好,我是银子,一家互联网公司的负责人最近,一个“三个月私域做到2000万营业额”的燕窝口服液案例在圈内引发热议。有人说它是神来之笔,也有人说它是割韭菜的套路。抛开争议,今天我们以商家和企业运营者的视角&#…...

CSDN Markdown 微笑与 section 符号

CSDN Markdown 微笑与 section 符号References:)😃 (P) (p) References [1] Yongqiang Cheng (程永强), https://yongqiang.blog.csdn.net/...

CSDN Markdown 商标标志 C、TM 和 R

CSDN Markdown 商标标志 C、TM 和 R1. 版权标记 / 版权符号 (copyright symbol or copyright sign)2. 商标标志 C、TM 和 RReferences1. 版权标记 / 版权符号 (copyright symbol or copyright sign) The copyright symbol, or copyright sign, © (a circled capital lett…...

mybatis根据日期范围查询,多参数查询

一、根据日期范围查询 如果数据库里的日期字段属性是date或者是datetime对应maper.xml&#xff1a;其中<![CDATA[ ]]>&#xff1a;这是XML语法。在CDATA内部的所有内容都会被解析器忽略。如果文本包含了很多的"<“字符 <和”&"字符&#xff0c;那么…...

基于LLM的电商分析系统设计

基于LLM的电商分析系统设计 关键词&#xff1a;大语言模型&#xff08;LLM&#xff09;、电商分析系统、数据挖掘、自然语言处理、机器学习 摘要&#xff1a;本文围绕基于大语言模型&#xff08;LLM&#xff09;的电商分析系统展开设计与探讨。首先介绍了系统开发的背景、目的、…...

2026 年,企业级 AI Agent 的成熟元年

过去两年&#xff0c;大语言模型的爆发让机器真正学会了 “说话”—— 它们能吟诗作对、答疑解惑&#xff0c;甚至模拟角色对话。但对话终究只是交互的起点&#xff0c;2026 年&#xff0c;我们正站在一个更重要的转折点上&#xff1a;AI Agent 的成熟&#xff0c;让机器从 “会…...

Pytorch---- CIFAR10实战(训练集+测试集+验证集)完整版,逐行注释-----学习笔记

文章目录 CIFAR10数据集准备、加载搭建神经网络损失函数和优化器训练集测试集关于argmax: 使用tensorboard可视化训练过程。完整代码(训练集测试集):程序结果: 验证集完整代码(验证集): CIFAR10数据集准备、加载 解释一下里面的参数 root数据放在哪。 train是否为训练集 。 do…...

实用代码、链接、工具汇总

学习资料推荐网站 https://www.code-nav.cn/ https://www.r2coding.com/ https://www.c114.com.cn/ https://juejin.cn/ https://www.fromgeek.com/about/index.html https://www.xygalaxy.com/ freertos: https://www.freertos.org/zh-cn-cmn-s/Documentation/01-FreeRTOS-qu…...

Jmeter IF控制器

IF控制器简介使用方法简介 Jmeter中的IF控制器在判断条件为真的情况下&#xff0c;会执行其下的组件。IF控制器判断条件为空时&#xff0c;表示false。其在Jmeter中的设置页面如下所示。 图中第一个红框输入IF控制器的判断条件&#xff1b;第二个红框表示 “直接使用上一个&a…...

Pytorch----池化层(平均值池化、最大值池化、自适应最大值池化)--入门级小实例(逐行注释)---学习笔记

文章目录最大值池化层平均值池化层自适应平均值池化层代码实现还是用上次的小实例 &#xff0c;这次加入三种池化层做练习。 关于池化层的基础概念可以看这里。 我之前以为池化层也叫下采样&#xff0c;但这样说并不严格&#xff0c;只是大家都这么说&#xff0c;我刚知道&am…...

风机光伏——02 风机出力建模

一、风机模型function power simpleTurbine( windSpeed, ratedOutputPower, cutInSpeed, ratedOutputSpeed, cutOutSpeed ) %#codegen %Simple Turbine % This function implements a simple power versus wind speed characteristic 此函数实现了简单的功率与风速特性 % to r…...

【动态规划】【广度优先搜索】【逆向思考】【单调向量】2617 网格图中最少访问的格子数

本文涉及的基础知识点 二分查找算法合集 动态规划汇总 题目 给你一个下标从 0 开始的 m x n 整数矩阵 grid 。你一开始的位置在 左上角 格子 (0, 0) 。 当你在格子 (i, j) 的时候&#xff0c;你可以移动到以下格子之一&#xff1a; 满足 j < k < grid[i][j] j 的格子…...

写字基本功 - 正确握笔姿势

写字基本功 - 正确握笔姿势1. 写字基本功2. 正确握笔步骤3. 正确握笔姿势 - 重点解说图3.1. 食指3.2. 拇指3.3. 中指3.4. 其它3.5. 施力方法References1. 写字基本功 郑文彬 (布衣老师)&#xff0c;台湾桃园市人&#xff0c;研究硬笔写字教学二十余年&#xff0c;台湾元智大学…...

3.8-STL(八)(总结篇)

###以四道题来总结题号:lanqiao OJ 32261.宝藏排序II### 这道题主要考察sort,非常简单输出就是升序不需要自定义比较函数#include<bits/stdc.h> using namespace std; const int N1e55; //这里用int就足够了不需要开long long int a[N]; int main(){ios::sync_with_stdio…...

3.7-STL(七)(map篇)

### 这里重点学习map ### 在实际做题过程中,multimap几乎用不到### unordered_map拥有极好的平均时间复杂度和极差的最坏时间复杂度,所以他的时间复杂度是不稳定的,unordered_map一般用不到,要做一个了解1.mapmap是一种关联容器,用于存储一组键值对(key-value pairs),其中每个键…...

推荐开源项目:OpenBMC - 未来服务器管理的利器

推荐开源项目&#xff1a;OpenBMC - 未来服务器管理的利器 【免费下载链接】openbmc OpenBMC Distribution 项目地址: https://gitcode.com/gh_mirrors/op/openbmc 1、项目介绍 OpenBMC 是一个基于 Linux 的管理控制器分布&#xff0c;专门设计用于服务器、顶部机架交换…...

终极iOS防崩溃指南:如何使用AvoidCrash框架避免Objective-C运行时陷阱

终极iOS防崩溃指南&#xff1a;如何使用AvoidCrash框架避免Objective-C运行时陷阱 【免费下载链接】AvoidCrash This framework can effective avoid crash by potential error code. For example : If you insert a nil into a mutable array, this framework can avoid crash…...

Eisvogel与Docker结合:免安装LaTeX环境快速生成PDF文档

Eisvogel与Docker结合&#xff1a;免安装LaTeX环境快速生成PDF文档 【免费下载链接】pandoc-latex-template A pandoc LaTeX template to convert markdown files to PDF or LaTeX. 项目地址: https://gitcode.com/gh_mirrors/pa/pandoc-latex-template GitHub 加速计划…...

csvkit新手入门:5分钟掌握in2csv,轻松转换非CSV格式文件

csvkit新手入门&#xff1a;5分钟掌握in2csv&#xff0c;轻松转换非CSV格式文件 【免费下载链接】csvkit A suite of utilities for converting to and working with CSV, the king of tabular file formats. 项目地址: https://gitcode.com/gh_mirrors/cs/csvkit csvki…...

如何快速搭建Ruby on Rails管理后台:Trestle现代化框架的完整指南

如何快速搭建Ruby on Rails管理后台&#xff1a;Trestle现代化框架的完整指南 【免费下载链接】trestle A modern, responsive admin framework for Ruby on Rails 项目地址: https://gitcode.com/gh_mirrors/tr/trestle Trestle是一个为Ruby on Rails设计的现代化响应式…...

ProcessHacker高级筛选器创建:基于多条件组合定位进程

ProcessHacker高级筛选器创建&#xff1a;基于多条件组合定位进程 【免费下载链接】systeminformer A free, powerful, multi-purpose tool that helps you monitor system resources, debug software and detect malware. Brought to you by Winsider Seminars & Solution…...

Gorilla机器学习工作流:模型训练与部署的API调用自动化

Gorilla机器学习工作流&#xff1a;模型训练与部署的API调用自动化 【免费下载链接】gorilla Gorilla: An API store for LLMs 项目地址: https://gitcode.com/gh_mirrors/go/gorilla Gorilla作为一个专为大型语言模型(LLMs)设计的API商店&#xff0c;通过自动化API调用…...

如何快速上手RancherOS:10分钟从零开始部署容器化操作系统

如何快速上手RancherOS&#xff1a;10分钟从零开始部署容器化操作系统 【免费下载链接】os Tiny Linux distro that runs the entire OS as Docker containers 项目地址: https://gitcode.com/gh_mirrors/os/os RancherOS是一款将整个操作系统作为Docker容器运行的轻量级…...

Multi-Agent Orchestrator快速入门指南:5分钟搭建你的第一个AI代理系统

Multi-Agent Orchestrator快速入门指南&#xff1a;5分钟搭建你的第一个AI代理系统 【免费下载链接】multi-agent-orchestrator Flexible and powerful framework for managing multiple AI agents and handling complex conversations 项目地址: https://gitcode.com/GitHub…...

3步上手stock-knowledge-graph:快速搭建你的证券知识图谱

3步上手stock-knowledge-graph&#xff1a;快速搭建你的证券知识图谱 【免费下载链接】stock-knowledge-graph 利用网络上公开的数据构建一个小型的证券知识图谱/知识库 项目地址: https://gitcode.com/gh_mirrors/st/stock-knowledge-graph stock-knowledge-graph是一个…...

如何在AWS/GCP/Azure上搭建LabelMe云标注平台:完整部署指南

如何在AWS/GCP/Azure上搭建LabelMe云标注平台&#xff1a;完整部署指南 【免费下载链接】labelme Image Polygonal Annotation with Python (polygon, rectangle, circle, line, point and image-level flag annotation). 项目地址: https://gitcode.com/gh_mirrors/lab/labe…...