mac mongodb6.0.1安装 配置 + 权限指南

mongodb

mongodb版本: 6.0.1

安装流程:https://juejin.cn/post/6985093901329629192

  1. 下载mongodb

    https://www.mongodb.com/try/download/community

在这里插入图片描述

  1. 下载完成之后,将文件放到 /usr/local下,把文件夹的名字改成mongodb

在这里插入图片描述

  1. 配置全局环境变量
cd ~/     
touch .bash_profile  // 创建 .bash_profile 如果改文件已经存在,则不用创建
open -e .bash_profile  // 打开.bash_profile文件
  1. 在文件中加入如下内容
export PATH=${PATH}:/usr/local/mongodb/bin
  1. 在mongodb目录下创建 data log文件夹,并赋予文件夹权限,执行一下命令

cd /usr/local/mongodb

mkdir data log

sudo chown hallwowu /usr/local/mongodb/data

sudo chown hallwowu /usr/local/mongodb/log

  1. 开启后台服务,同时设置log和data路径

–fork: 后台启动服务

mongod --fork --dbpath /usr/local/mongodb/data --logpath /usr/local/mongodb/log/mongo.log --logappend

报错: 出现错误原因:有另外的mongod服务在跑,我们需要杀对应的进程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vHrE39eR-1661942659433)(/Users/hallwowu/Library/Application Support/typora-user-images/image-20220831182237522.png)]

  1. 处理错误

ps -ef | grep mongo

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8ZxJnSaw-1661942659433)(/Users/hallwowu/Library/Application Support/typora-user-images/image-20220831182417611.png)]

然后通过一下命令杀死进程

kill -9 pid pid: 对应的是我选中的数字 61636,根据自己的进程号写

参考文档:https://www.jianshu.com/p/1e4040679d6e

  1. 验证

mongosh

在这里插入图片描述

http://127.0.0.1:27017/ 访问地址 返回 It looks like you are trying to access MongoDB over HTTP on the native driver port.

代表你成功了。

  1. 关闭mongodb服务
use admin 
db.shutdownServer({force: true})

可以通过ps -ef | grep mongo 来查看是否还有mongo进程,默认有一个,如果有两个以上,代表服务没有被关闭。

方式二:

这里咱们还可以使用配置文件来启动mongodb服务

mongod -f /usr/local/mongodb/etc/mongo.conf

咱们在/usr/local/mongodb/etc 目录下创建mongo.conf 文件

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/
# where to write logging data.
 systemLog:
    destination: file
    logAppend: true
    path: /usr/local/mongodb/log/mongo.log
# Where and how to store data.
 storage:
    dbPath: /usr/local/mongodb/data/
    journal:
        enabled: true
# how the process runs
 processManagement:
    fork: true  # fork and run in background
# network interfaces
 net:
    port: 27017
    bindIp: 127.0.0.1  
 security:
    authorization: enabled

使用配置环境关闭mongodb服务时,会报错

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-augN8gIM-1661952803656)(/Users/hallwowu/Library/Application Support/typora-user-images/image-20220831211406767.png)]

我们需要授权,首先我们登入, 注意我们要进入对应的数据库, use admin

db.auth('admin','123456')
db.grantRolesToUser('admin',[{role: "hostManager",db:"admin"}])

接着我们在关闭mongodb服务就OK了

db.shutdownServer({force: true})

当我们配置完mongo.conf 并重启之后,我们直接使用mongosh命令则不能连接上服务器

mongosh admin -u admin -p 123456 //最前面的admin是数据库 -u后面的admin是用户名,-p 后面的是密码

当你直接通过mongosh 直接登入之后,可以进入对应的数据库,但是你没有权限退出服务,导致你下次再进入的时候因为有mongo服务存在,而不能连接成功,我们得先通过一下命令,先登入,然后才能关闭服务。

先通过mongosh登入,在通过一下命令进行鉴权也是OK的

db.auth('admin','123456') // 用户名和密码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值