MongoDB的使用

5 篇文章 0 订阅
3 篇文章 0 订阅

下载和安装

  1. 下载
    官网下载地址
    选择自己的操作系统和数据库版本,点击下载即可。
    这里写图片描述

  2. 安装
    解压:
    这里写图片描述
    更改文件夹名:

 mv mongodb-linux-x86_64-ubuntu1404-3.6.0.tgz/ mongodb-3.6.0
  1. 配置
    自己创建配置文件mongo.config:
    这里写图片描述
    创建数据库文件夹和数据库日志文件夹:
mkdir -p /data/db /data/log/
  1. 启动
    创建一个启动脚本:
    这里写图片描述
    赋予执行权限:chmod u+x startup.sh
    执行startup.sh即可
    这里写图片描述
    当然也可以直接执行命令而不需要创建启动文件:
./mongd --config ../mongo.config

用户授权和管理

第一次进入mongodb不需要用户名和密码,直接执行启动文件或者mongod即可。

  • 创建超级权限用户
> use admin
switched to db admin
> db.createUser({user:'root',pwd:'root',roles:[{ "role" : "root", "db" : "admin" }]});
Successfully added user: {
	"user" : "root",
	"roles" : [
		{
			"role" : "root",
			"db" : "admin"
		}
	]
}

重启mongodb

> use admin
switched to db admin
> db.auth("root","root")
1
> db.shutdownServer()
server should be down...
  • 创建用户并授权
> use test
switched to db test
> db.createUser({user:"user1",pwd:"user1",roles:[{role:"readWrite",db:"test"}]})
Successfully added user: {
	"user" : "user1",
	"roles" : [
		{
			"role" : "readWrite",
			"db" : "test"
		}
	]
}
  • 修改密码
> use test
switched to db test
> db.changeUserPassword("user1","testpwd")
  • 添加角色
> use test
switched to db test
> db.grantRolesToUser("user1",[{role:"read",db:"test"}])
  • 回收角色权限
> use test
switched to db test
> db.revokeRolesFromUser("user1",[{role:"read",db:"tst"}])
  • 删除用户
> use test
switched to db test
> db.dropUser("user1")
true

增删改查

  • 创建集合
> db.createCollection("food")
{ "ok" : 1 }
> show collections
food

也可以不用手动创建集合,插入数据的时候会自动创建。

  • 插入数据
> db.food.insert({name:"白菜",price:99})
WriteResult({ "nInserted" : 1 })
> db.food.insert({name:"萝卜",price:88})
WriteResult({ "nInserted" : 1 })
> db.food.insert({name:"辣椒",price:77})
WriteResult({ "nInserted" : 1 })
  • 删除数据
> 
> db.food.remove({price:11})
WriteResult({ "nRemoved" : 0 })
  • 修改数据
    文档替换:
> var f={name:"白菜1000",price:1000}
> db.food.update({name:"白菜"},f)
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.food.find()
{ "_id" : ObjectId("5a35481aa39c8b1818ecb609"), "name" : "萝卜", "price" : 88 }
{ "_id" : ObjectId("5a35482ea39c8b1818ecb60a"), "name" : "辣椒", "price" : 77 }
{ "_id" : ObjectId("5a3552a3a39c8b1818ecb60b"), "name" : "白菜1000", "price" : 1000 }
  • 查询数据
    (待更新)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

下一页天空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值