MongoDB创建用户 、数据库、索引等基础操作

MongoDB的权限认证是相对来说比较复杂的,不同的库创建后需要创建用户来管理。

本机中的MongoDB是docker 启动的,所以先进入docker的镜像中

docker exec -it mongodb bash

这样就进入到了镜像MongoDB中,然后输入命令连接MongoDB数据库   注意用户名密码以及数据库名称

mongo -u 123 -p 123 --authenticationDatabase space

 出现这个界面说明登录成功

接下来开始创建数据库   创建表   创建索引的操作

//创建数据库 dyys
use dyys

//创建用户
db.createUser({
  user: "123",
  pwd: "123",
  roles: [
    { role: "readWrite", db: "dyys" }
  ]
})

//创建表 orbit_basic_data   orbit_data
db.createCollection("orbit_basic_data")
db.createCollection("orbit_data")


//为上面两个表的_id字段新增唯一索引
db.orbit_basic_data.createIndex({ "_id": 1 }, { unique: true })
db.orbit_data.createIndex({ "_id": 1 }, { unique: true })


//为orbit_basic_data表中字段 orbitName添加普通索引
db.orbit_basic_data.createIndex({ "orbitName": 1 })

//查看表中的所有索引
db.orbit_basic_data.getIndexes()
//删除某个索引  这里的 "orbitName_1" 是索引的名称。请注意,MongoDB 的索引名称通常由字段名和排序方式组成。
db.orbit_basic_data.dropIndex("orbitName_1")


当然   一般我们实际使用时,需要进行挂载,因为不挂载的话每次关机后  docker下镜像都会删除所有数据,导致数据库丢失。所以可以用下面的命令进行挂载启动(centos中)

docker run --restart=always --name mongo -p 27017:27017 -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=root -v /home/mongo/docker-data/27017/db/:/data/db -d mongo:4.4.10

-e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=root

指定了当前镜像的用户名密码为root  root

-v /home/mongo/docker-data/27017/db/:/data/db

指定将数据挂载到宿主机-v /home/mongo/docker-data/27017/db目录下

这样当我们再次启动的时候,也不会导致数据库丢失

连接数据库

mongo -u root -p root
创建数据库

use dyys
创建用户并授权

db.createUser({
  user: "dyysuser",
  pwd: "dyyspassword",
  roles: [
    { role: "readWrite", db: "dyys" }
  ]
})
退出mongo

quit()
即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值