mongosDb 安装及Mongosshell常见命令

背景

在学习Node.js全栈开发,最近陆续补足代码实践部分。在此记录并学习。

MongosDb(Windows)&MongosShell安装

MongosDb

Windows 平台安装 MongoDB | 菜鸟教程

MongosShell

https://www.runoob.com/mongodb/mongodb-shell.html

单个数据库实体安装

mongod --install --port 27019 --dbpath D:\data\db27019 --logpath D:\data\db27019\mongodb27019.log --serviceName MongoDB27019

  1. 查看服务状态

按下Win+R输入services.msc回车,在服务列表中能看到MongoDB Server 27018、MongoDB Server 27019(配置文件中的displayName),状态为正在运行即成功。

--查找并杀掉进程

netstat -ano | findstr "27018"

taskkill /PID 1234 /F

--删除Mongos配置文件

mongod --config "D:\data\mongod.cfg" --remove

配置多个数据库实体

mongod --config "D:\mongosDb\configFolder\mongod_27017.cfg" --install

mongod_27017.cfg文件内容

系统日志配置

systemLog:

destination: file # 日志输出到文件(而非控制台)

path: D:\mongosDb\logFolder\log27017\mongod_27017.log # 27018专属日志文件(MongoDB自动生成)

logAppend: true # 日志追加模式(不覆盖原有日志)

数据存储配置

storage:

dbPath: D:\mongosDb\storageFolder\db27017 # 27017专属数据目录(必须手动创建)

engine: wiredTiger # MongoDB默认存储引擎,无需修改

网络配置

net:

port: 27017 # 27017专属端口

bindIp: 127.0.0.1 # 仅本地访问(如需局域网访问,改为0.0.0.0)

服务运行配置

processManagement:

windowsService:

serviceName: MongoDB27017 # 服务名(后续管理用,必须唯一)

displayName: MongoDB Server 27017 # 服务面板显示名(可选,建议唯一,便于识别)

--启动MongoDB服务:

net start MongoDB27017

--验证服务是否正常运行:

sc query MongoDB27017

--连接MongoDB数据库(默认端口27017):

mongo

--如果需要停止服务,使用:

net stop MongoDB27017

mongod --config "D:\mongosDb\configFolder\mongod_27018.cfg" --install

--启动MongoDB服务:

net start MongoDB27018

--验证服务是否正常运行:

sc query MongoDB27018

--连接MongoDB数据库(默认端口27017):

mongo

--如果需要停止服务,使用:

net stop MongoDB27018

MongosShell连接Db及语法

--mongoshell 连接mongosDb数据库

mongosh --host <hostname>:<port>

mongosh --host 127.0.0.1:27018

查看当前数据库:db

显示数据库列表:show dbs

切换到指定数据库:use <database_name>

执行查询操作:db.<collection_name>.find()

插入文档:db.<collection_name>.insertOne({ ... })

更新文档:db.<collection_name>.updateOne({ ... })

删除文档:db.<collection_name>.deleteOne({ ... })

退出 MongoDB Shell:quit() 或者 exit

启动 MongoDB Shell

mongosh

连接到本地 MongoDB 服务器

test> show dbs

admin 40.00 KiB

config 72.00 KiB

local 40.00 KiB

runoob 72.00 KiB

test> use runoob

switched to db runoob

插入文档

runoob> db.mycollection.insertOne({ name: "Alice", age: 30 })

{

acknowledged: true,

insertedId: ObjectId('667cd8789a69705686ed70f2')

}

查询文档

runoob> db.mycollection.find()

{ _id: ObjectId('667cd8789a69705686ed70f2'), name: 'Alice', age: 30 }

更新文档

runoob> db.mycollection.updateOne({ name: "Alice" }, { $set: { age: 31 } })

{

acknowledged: true,

insertedId: null,

matchedCount: 1,

modifiedCount: 1,

upsertedCount: 0

}

删除文档

runoob> db.mycollection.deleteOne({ name: "Alice" })

{ acknowledged: true, deletedCount: 1 }

退出 MongoDB Shell

runoob> quit()

相关推荐
煮煮论英雄7 分钟前
单文件部署的MQTT轻量级物联网数据平台
jvm·物联网·oracle
底层玩家老张8 分钟前
数据库上K8s,运维为什么反而更累了?从StatefulSet到Operator的复盘
数据库·kubernetes·operator·数据库运维·架构选型
蓝鸟197413 分钟前
Python Flask + Oracle 接口开发 小白完整版笔记(入参/查库/批量/JSON/避坑)
python·oracle·flask
Tisfy24 分钟前
LeetCode 2058.找出临界点之间的最小和最大距离:遍历+遇到极值则更新(这种题谁空间复杂度不是O(1)啊)
linux·数据库·leetcode·链表·题解·模拟·遍历
数据库小学妹29 分钟前
MySQL死锁排查:锁机制原理、死锁日志与information_schema定位
运维·数据库·mysql
2601_9673387130 分钟前
Text2SQL智能体基础到实战课程
数据库·oracle
CadeCode36 分钟前
Oracle 逗号拼接字段处理
数据库·后端·性能优化
Sirens.36 分钟前
MySQL数据库:视图
数据库·mysql
山岚的运维笔记1 小时前
mysql 专业笔记 -- 第 1 章:MySQL 入门
运维·数据库·笔记·后端·学习·mysql·dba
IT小白杨1 小时前
TikTok小店防封号浏览器实战:2026年多店铺环境隔离与账号安全运营技术解析
开发语言·数据库·安全·php·chrome devtools·指纹浏览器