MongoDB: centos 使用mongodb

发布于 1/6/2020·评论 0

来自菜鸟驿站

curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz    # 下载
tar -zxvf mongodb-linux-x86_64-3.0.6.tgz                                   # 解压

mv  mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb 

安装准备

在远程服务器,准备mongo需要的几个文件和文件夹

cd /

mkdir mongo
cd mongo
mkdir data
mkdir log
cd data && mkdir db # 数据库
cd log
vi mongob.log # 日志文件

vi mongo.cfg # mongodb的配置文件

启动mongo服务

cd /mongo/bin/
mongo --config '/mongo/mongod.cfg'

以我自己的服务器配置为例,在**/lib/systemd/system/** 目录下新建 mongodb.service文件,内容如下

[Unit]  
  
Description=mongodb   
After=network.target remote-fs.target nss-lookup.target  
  
[Service]  
Type=forking  
ExecStart=/mongo/mongodb/bin/mongod --config /mongo/mongodb/bin/mongodb.conf  
ExecReload=/bin/kill -s HUP $MAINPID  
ExecStop=/mongo/mongodb/bin/mongod --shutdown --config /mongo/mongodb/bin/mongodb.conf  
PrivateTmp=true  
    
[Install]  
WantedBy=multi-user.target 

使用:

systemctl start mongodb.service # 开启mongodb服务
systemctl reload mongodb.service # 重启mongodb服务
systemctl stop mongodb.service # 停止mongodb服务

如图:
efe071404aa37b0f980b02c12006a96

启动服务之后, 执行命令 netstat -tunlp | grep 27017 查看一下端口的占用情况, 端口号为mongo.cfg的配置文件中配置的端口号

配置路径

使用mongo的时候,需要把mongod安装的位置暴露到全局环境

export PATH=‘<mongodb filepath>/bin:$PATH

Mongodb的权限配置

开启--auth 或者是mongo.cfg中设置auth=true之后,数据库的操作就有了权限控制,在没有权限的情况下会报一个没有权限的错误,
就像下面这个没有写入权限的错误类似
image

解决如下:
打开mongo的shell

use admin
> switched admin
db.createUser({ 
  user: 'root',
  pwd: 'root'
  roles: [
    {
      role: 'userAdminAnyDatabase', # 添加数据库管理员
      db: 'admin'
    }
  ]
})

db.auth('root', 'root') # 验证账户

db.createUser({ # 给数据库添加可操作账号
 user: 'admin',
 pwd: 'admin',
 roles: [
    { role: 'read', db: 'test' },  # 只读权限
  ]
})

配置之后继续验证一下权限
use test
db.auth('admin', 'admin')

db.createUser({ # 给数据库添加可操作账号
 user: 'admin_rw',
 pwd: 'admin_rw',
 roles: [
     { role: 'readWrite', db: 'test' }  # 读写权限
  ]
})
 use test
db.auth('admin_rw', 'admin_rw')

linux 下Mongodb服务的自启动
Mongodb 权限设计

更新时间:
stack-wuh 2020-01-10 02:40:39 更新
所属项目:
stack-wuh/blog
开源许可:
本文内容遵循 CC BY-NC-SA 4.0 协议,转载请注明文章出处与原文链接。
所属标签:
NodeMongodb

空空如也~

评论功能正在开发中,欢迎稍后回来留言交流。

logo
驿寄梅花, 鱼传尺素
Copyright©2024 Shadow.
你也想起舞吗
由next.js、mongodb和nest.js强力驱动
鄂ICP备20001814号-1
粤公网安备44030002001803号
等待播放
PLAYER
加载默认歌单...
等待播放
等待播放
00:0000:00
音量
歌词
暂无歌词
播放列表