转:https://www.cnblogs.com/dreamsqin/p/10885038.html
安装MongoDB
双击运行msi文件,一直“Next”。
可以通过点击 "Custom(自定义)" 按钮来设置你的安装目录,一般默认装在C盘。
创建数据库目录和日志目录
MongoDB将数据目录存储在 db 目录下。但是这个数据目录不会主动创建,我们在安装完成后需要创建它。请注意,数据目录应该放在根目录下((如: C:\ 或者 D:\ 等 ),同时在data文件下创建一个新文件夹logs(用来存放日志文件)。
测试MongDB是否安装成功
(1)打开cmd命令行
(2)进入C:\Program Files\MongoDB\Server\3.4\bin目录
(3)输入如下的命令启动mongodb服务:mongod --dbpath F:\data\db
(4)在浏览器输入http://localhost:27017 (27017是mongodb的端口号)查看,若显示如下,则表示连接成功。如果不成功,可以查看端口是否被占用。
(5)Ctrl+C退出数据库
配置本地windows MongoDB 服务
配置后可设置为开机自启动,可直接手动启动关闭,可通过命令行net start MongoDB 启动。
(1)在路径C:\Program Files\MongoDB\Server\3.4下创建配置文件mongod.cfg
(2)配置文件内容如下:
systemLog:
destination: file path: D:\data\logs\mongod.log
storage:
dbPath: D:\data\db
(3)用管理员身份打开cmd,cd到 C:\Program Files\MongoDB\Server\3.4\bin目录下
(4)输入:mongod --config " C:\Program Files\MongoDB\Server\3.4\mongod.cfg" --install --serviceName "MongoDB",即根据刚创建的mongod.cfg配置文件安装服务,名称为MongoDB。
(5)完成后,查看本地的服务。
(6)通过命令行net start MongoDB启动或命令行net stop MongoDB关闭MongoDB服务。
配置环境变量
将mongodb的安装路径C:\Program Files\MongoDB\Server\3.4\bin添加至path中
删除服务
sc delete MongoDB
删除指定用户
db.dropUser(“user_name”)
删除当前库所有用户
db.dropAllUser()
Mongodb未授权访问漏洞修复(为MongoDB添加认证):
1、创建超级用户admin,授予在所有数据库上读写数据的权限
use admin
db.createUser({user:"admin",pwd:"123456",roles:["root"]})
2、查看用户集合
db.system.users.find()
3、验证用户
db.auth(“admin”, “123456”)
返回1则表示成功
4、创建yapi数据库用户
use yapi
db.createUser({user:"root",pwd:"123456",roles:[{role:"dbOwner",db:"yapi"}]})
5、查看用户集合
use admin
db.system.users.find()
6、验证用户
use yapi
db.auth("root","123456")
7、退出后关闭MongoDB服务
8、启用auth,修改配置文件mongod.cfg
配置文件新增
security:
authorization: enabled
9、重启MongoDB
10、修改Yapi配置文件config.json
11、重启Yapi
简化安装:
1、下载安装:
MongoDB官网:
下载地址:https://www.mongodb.com/download-center/community
2、添加系统变量
C:\Program Files\MongoDB\Server\4.2\bin
3、运行MongoDB
mongod --dbpath xxxx 路径
如:mongod --dbpath C:\Program Files\MongoDB\Server\4.2\bin
4、连接MongoDB
mongo
5、关闭MongoDB
查看mongo进程
ps -ef | grep mongo
sudo kill 74316(pid)
MongoDB基本使用
show dbs # 查看数据库
use 数据库 # 切换数据库
db.dropDatabase() # 删除数据库
show tables/show collections # 查看集合
数据库的增删改查
查找
db.集合名字.find({条件})
db.集合名字.findOne({条件})
db.集合名字.find({条件}).pretty()
db.集合名字.find({条件}),count()
db.集合名字.find().sort({字段:1/-1})
db.集合名字.find().limit().skip()
db.集合名字.find({},{字段:1/0})
db.集合名字.find({字段:{比较运算符:xxx}})
db.集合名字.find({字段:{$in:[xx,xx]}})
db.集合名字.find({$or:[{条件},{条件}]})
修改
db.集合名字.update({条件},{更新的数据})
db.集合名字.update({条件},{$set:{更新的数据}})
db.集合名字.update({条件},{$set:{更新的数据}},{multi:true})
删除
db.集合名字.remove({条件})
新增
db.集合名字.insert({数据})
db.集合名字.save({数据})