Mac [M1] MongoDB6安装&配置自启

本文详细介绍了在Mac M1芯片的电脑上安装MongoDB Community版的步骤,包括下载、解压、配置环境变量、创建启动脚本、启动数据库、配置账户以及设置MongoDB自动启动的方法。在配置过程中,强调了正确指定MongoDB的安装路径、修改环境变量、创建配置文件以简化启动命令,并提供了检查和停止MongoDB服务的技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装:

        1. 下载mongoDB  [注意选择对应系统]MongoDB Community Download | MongoDBDownload the Community version of MongoDB's non-relational database server from MongoDB's download center.icon-default.png?t=O83Ahttps://www.mongodb.com/try/download/community

        2. 下载之后解压到你想放的地方,一般来说不要放到mongodb无法写入的位置

# 这里我放到了/opt/mongoDB 里面
# 跳转到opt目录
cd /opt
# 创建MongoDB文件夹
mkdir mongoDB
# 跳转到刚创建好的文件夹
cd mongoDB
# 创建两个新文件夹data作为存储log作为日志,etc后面用
mkdir data log etc
# 做到这一步之后直接把解压出来的文件夹里面的所有文件放到mongoDB文件夹内


# 看别人写的总用代码去操作移动,其实直接鼠标可视化操作也可以

         3. 下载mongoSh [注意选择对应系统]MongoDB Shell Download | MongoDBThe MongoDB Shell is a modern command-line experience, full with features to make it easier to work with your database. Free download. Try now!icon-default.png?t=O83Ahttps://www.mongodb.com/try/download/shell?jmp=docs

                a. 在最新版的mongo当中将原先的shell独立了出来,需要单独下载

                b. 下载之后解压出来的文件夹当中的所有文件跟MongoDB文件放到一起即可 [/opt/mongoDB ]

配置环境变量

        1. 我们都知道mac的终端需要跟windows一样的环境变量配置才能直接调用内部程序,那么这里以 iTerm+zsh 为例【可视化操作】

                a. 打开访达 显示隐藏文件 [ 快捷键:command + shift + 点 ] 注意那个就是中文的句号

                b. 跳转到你的文件夹,这一步如果没有的话,打开访达的偏好设置[ 快捷键:command + 逗号 ],在边栏配置里面把你个人收藏里面你账户名字那个小房子左边勾选。

                c. 找到.zshrc用任意一个文本编辑器打开在最下面输入

# mongoDB
export PATH=${PATH}: /opt/mongoDB/bin
# mongoDB end

# 后面是注释可以不要,最好还是带上为了以后配置的时候知道你配置了什么
# /opt/mongoDB/bin 这是我mongoDB存放的位置,根据
# 个人配置修改只要绑定那一堆文件当中的bin文件即可
# 获取文件地址方法: 按住option键右键的时候你会发现复制文件路径
# 注意: 变量地址绑定的一定是bin目录不是mongoDB目录也不是bin目录里面的某个文件

        2. 配置完环境变量之后可以通过终端命令来应用环境变量,但是太麻烦直接下面找到item2右键退出,重新开一个终端,OK

配置MongoDB

        1. 此时其实就可以直接启动mongodb了,但是启动代码非常长……,所以mongodb给我们提供了脚本启动方式,还记得之前创建的etc目录 [ cd /opt/mongoDB/etc ] 么,在该目录中创建一个文件起名 mongo.conf [ 你随便起名字只要后缀是conf就行,为了方便记这里起名mongo ]

        2. 任意编辑器打开该文件并编辑

# 守护进程
processManagement:
   fork: true

# 配置端口
net:
   bindIp: localhost
   port: 27017

# 数据存放位置
storage:
   dbPath: /opt/mongoDB/data

# 系统日志存放位置
systemLog:
   destination: file
   path: "/opt/mongoDB/log/mongod.log"
   logAppend: true

# 是否开启授权模式【如果是enabled那么你的一些操作需要登录之后才能使用】
# security:
#    authorization: enabled

        3. 具体脚本配置信息可以查看官方文档 Run-time Database Configuration — MongoDB Manualicon-default.png?t=O83Ahttps://www.mongodb.com/docs/manual/administration/configuration/#std-label-base-config        4. 配置好脚本之后,万事大吉? 到这一步就可以方便的使用了

启动MongoDB

        1. 打开终端输入 mongod -f /opt/mongoDB/etc/mongo.conf 启动了!!!

                a. 执行之后显示successful就基本成功,也可以在浏览器输入localhost:27017如果显示如下就是成功。

It looks like you are trying to access MongoDB over HTTP on the native driver port.

                b. 启动失败有可能以前安装过mongodb正启动着或者当前mongodb端口被占用

                c. 终端输入 ps -ef | grep mongo 查看是否有mongo启动着

                d. 通过终端命令 sudo kill -9 xxxx 干掉正在运行的mongo,那个xxxx就是mongo当前的进程id,我这里就是 662 

配置账户

        1. 打开终端输入 mongosh 进入mongo shell界面【执行这一步的时候要确定你的启动MongoDB成功了】

        2. 在mongo shell 当中输入

1. use admin  --> 选择数据库

2. db.system.users.remove({})    --> 删除所有用户,如果初次安装没有配置过用户,这一步可以省略

3. db.createUser({ user: "admin", pwd: "admin", roles: [ { role: "root", db: "admin"} ]}) --> 创建root用户

       3. 具体mongo shell操作请查看文档

配置自动启动

        1.终端输入 sudo vim /Library/LaunchDaemons/org.mongodb.mongod.plist

# 将下面内容粘贴进去直接command CV

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN""http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
        <dict>
            <key>Label</key>
            <string>org.mongodb.mongod</string>
            <key>ProgramArguments</key>
            <array>
                <string>/opt/mongoDB/bin/mongod</string>
                <string>run</string>
                <string>--config</string>
                <string>/opt/mongoDB/bin/etc/mongod.conf</string>
            </array>
            <key>RunAtLoad</key>
            <true/>
            <key>KeepAlive</key>
            <true/>
            <key>WorkingDirectory</key>
            <string>/opt/mongoDB</string>
            <key>StandardErrorPath</key>
            <string>/opt/mongoDB/logs/error.log</string>
            <key>StandardOutPath</key>
            <string>/opt/mongoDB/logs/mongo.log</string>
        </dict>
    </plist>

# 注意粘贴进去之后有些东西是需要改的/opt/mongoDB如果你也是将文件创建在这里那么不需要更改,如果更改了位置你就需要将以上所有的/opt/mongoDB改成你自己的

        2. 启用自启 sudo launchctl load /Library/LaunchDaemons/org.mongodb.mongod.plist

                a. 这样重启之后就会自动启动

                b. 不想重启可以直接 sudo launchctl start org.mongodb.mongod 启动

                c. 停止可以使用 sudo launchctl stop org.mongodb.mongod 停止

        3. 如果觉得每次输入这么长烦气可以配置alias 【代码如下不过多赘述,自行百度】

alias mongostart='sudo launchctl start org.mongodb.mongod' 
alias mongostop='sudo launchctl stop org.mongodb.mongod'

macOS 上安装 MongoDB 时遇到问题,可能由多个原因导致。以下是常见的故障点及其解决方法: ### 1. **系统兼容性问题** - 如果使用的是 Apple Silicon(M1/M2)芯片的 Mac,需确认下载的 MongoDB 版本是否支持 ARM 架构。某些旧版本或社区构建可能仅适用于 x86_64 架构[^2]。 - 官方 MongoDB 发行版自 v5.0 起已提供对 ARM 平台的支持,因此建议从 [MongoDB 官网](https://www.mongodb.com/try/download/community) 下载适合 macOS ARM 的 `.tgz` 包。 ### 2. **路径配置与权限问题** - 启动 MongoDB 时需要指定数据库存储路径和日志文件路径,若未正确设置目录权限或路径不存在会导致启动失败。例如: ```bash mongod --dbpath /usr/local/var/mongodb/data/db --logpath /usr/local/var/mongodb/log/mongo.log --fork ``` 需要确保 `/usr/local/var/mongodb/data/db` 和 `/usr/local/var/mongodb/log/` 存在并具有正确的读写权限[^3]。 - 可通过以下命令创建目录并设置权限: ```bash mkdir -p /usr/local/var/mongodb/data/db /usr/local/var/mongodb/log sudo chown -R $(whoami):staff /usr/local/var/mongodb ``` ### 3. **端口冲突** - MongoDB 默认使用 `27017` 端口。如果该端口已被占用,`mongod` 将无法启动。可通过以下命令检查端口占用情况: ```bash lsof -i :27017 ``` 若发现已有进程运行在此端口,可选择终止该进程或更改 MongoDB 的监听端口(通过 `--port` 参数)。 ### 4. **配置文件错误** - 使用配置文件启动时,如 `mongod --config /usr/local/etc/mongod.conf`,应确保配置文件语法正确且路径有效。 - 示例配置文件内容如下: ```yaml systemLog: destination: file path: /usr/local/var/mongodb/log/mongo.log logAppend: true storage: dbPath: /usr/local/var/mongodb/data/db net: bindIp: 127.0.0.1 port: 27017 processManagement: fork: true ``` 若配置文件中存在拼写错误或无效字段,将导致服务启动失败。可以使用 `mongod --config /usr/local/etc/mongod.conf --verbose` 查看详细错误信息[^1]。 ### 5. **依赖库缺失** - 某些情况下,尤其是手动编译或使用非官方构建包时,可能会缺少必要的动态链接库。可通过安装 Homebrew 提供的 MongoDB 来避免此类问题: ```bash brew tap mongodb/brew &amp;&amp; brew install mongodb-community@5.0 ``` ### 6. **日志排查** - 若 MongoDB 启动失败,建议查看日志文件中的具体错误信息。日志通常位于配置文件中指定的路径下,如 `/usr/local/var/mongodb/log/mongo.log`,其中可能包含关于启动失败的详细原因。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值