背景
在学习Node.js全栈开发,最近陆续补足代码实践部分。在此记录并学习。
MongosDb(Windows)&MongosShell安装
MongosDb
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
- 查看服务状态
按下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()