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()

相关推荐
GBASE5 小时前
G术时刻 |GBase 8s数据库事务并发控制之封锁技术介绍(下)
数据库
CSharp精选营6 小时前
关系型 vs 非关系型:从原理到选型,一文搞定数据库核心分类
数据结构·nosql·关系型数据库·非关系型数据库·技术选型
曲幽13 小时前
你的REST接口还在“过度投喂”数据吗?——FastAPI + GraphQL实战避坑指南
python·fastapi·web·graphql·route·cors·rest·strawberry
xiezhr15 小时前
逛GitHub发现了一款免费的带AI功能的数据库管理工具
数据库·ai编程·dba
吃糖的小孩2 天前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
葫芦和十三2 天前
图解 MongoDB 17|大集合与工作集:数据超过内存怎么办
后端·mongodb·面试
葫芦和十三2 天前
图解 MongoDB 18|复制集拓扑:Primary、Secondary 和 Arbiter 的分工
后端·mongodb·面试
葫芦和十三2 天前
图解 MongoDB 15|journal 与持久化:写入怎么不丢,崩溃怎么恢复
后端·mongodb·面试
葫芦和十三2 天前
图解 MongoDB 16|压缩:snappy、zstd 和 zlib 的取舍
后端·mongodb·面试
笃行3502 天前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库