MongoDB Linux 安装

安装wget

yum install -y wget

创建目录

mkdir -p /opt/soft /opt/tarball /opt/src

安装mongo

# 创建mongo data、log目录
mkdir -p /opt/mongo/data /opt/mongo/logs


cd /opt/tarball
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.13.tgz


tar -xvf mongodb-linux-x86_64-4.0.13.tgz -C /opt/soft


cd /opt/soft/mongodb-linux-x86_64-4.0.13/

编辑mongo.conf配置文件

vi mongodb.conf,内容如下:


dbpath=/opt/mongo/data
logpath=/opt/mongo/mogo.log
fork=true
port=27017
logappend=true
#auth=true
bind_ip=0.0.0.0

启动mongo

/opt/soft/mongodb-linux-x86_64-4.0.13/bin/mongod -f /opt/soft/mongodb-linux-x86_64-4.0.13/mongodb.conf


# 检查启动端口情况
netstat -nlpt | grep 27017


访问mongo(非鉴权模式  注释了auth=true)

# 本地client访问mongodb
/opt/soft/mongodb-linux-x86_64-4.0.13/bin/mongo


创建一个用户管理员角色账号

# 查看当前db列表
show dbs
# 切换到admin  db


use admin
# 创建用户管理员角色账号
db.createUser(
{user: "useradmin",
pwd: "123456",
roles: ["userAdminAnyDatabase"]}
)


# 然后退出
exit


# 停止mongodb
/opt/soft/mongodb-linux-x86_64-4.0.13/bin/mongod --shutdown -f /opt/soft/mongodb-linux-x86_64-4.0.13/mongodb.conf


修改配置文件,修改为鉴权模式登录

vi /opt/soft/mongodb-linux-x86_64-4.0.13/mongodb.conf
放开auth=true这一样注释

重新启动mongodb

/opt/soft/mongodb-linux-x86_64-4.0.13/bin/mongod -f /opt/soft/mongodb-linux-x86_64-4.0.13/mongodb.conf

重新访问mongodb(鉴权模式  放开注释auth=true

下面步骤必须一气呵成,否则需要重新来过,不要问为什么,这是mongodb的个性。

# 本地client访问mongodb
/opt/soft/mongodb-linux-x86_64-4.0.13/bin/mongo


# 切换到admin  db
use admin
# 使用useradmin账号登录
db.auth("useradmin","123456")




# 创建my_db,并切换到my_db
use my_db


# 在my_db下创建普通用户lazy,角色为readWrite表示该用户拥有my_db的读写权限
db.createUser(
   {
      user:"lazy",
      pwd:"123456",
      roles:["readWrite"]
   }
)
# 在my_db下使用lazy账号登录
db.auth("lazy","123456")


# 在my_db下插入一条doc,这样才算真正创建my_db数据库
db.createCollection("ok")

mongodb角色介绍

read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限

---------------------- 正文结束 ------------------------

长按扫码关注微信公众号

Java软件编程之家

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值