mac安装mongoDB数据库方案及其常见问题解决办法

在mac上安装mongodb,也踩了不少坑,真是一把心酸一把泪,现将踩坑记录下来。

方法一: brew安装

  1. 打开终端应用程序,输入以下命令,以更新 Homebrew 的软件包列表:

    bash 复制代码
    brew update
  2. 输入以下命令,以安装 MongoDB 的最新稳定版本:

    bash 复制代码
    brew install mongodb-community@5.0

安装完毕后,按照指示先运行一下指令,用来注册路径

bash 复制代码
echo 'export PATH="/opt/homebrew/opt/mongodb-community@5.0/bin:$PATH"' >> ~/.zshrc
  1. 输入以下命令,以启动 MongoDB 的后台服务:
bash 复制代码
brew services start mongodb-community@5.0

在网上搜索教程时,下一步就是运行mongo指令,但是这是一个坑,正确的指令应该是mongosh

方案二: 下载安装包

  1. 将解压后的文件放入 /usr/local(打开Finder后按 shift + command +G 输入 /usr/local 后回车就能看到这个隐藏的目录)。
  1. 配置环境变量,打开终端,输入"open -e .bash_profile",在打开的文件中加入
  1. 关闭.bash_profile编辑窗口,回到命令行,输入source.bash_profile使配置生效。

  2. 输入mongod -version,回车后若看到版本号则说明MongoDB已经成功安装

  1. 在根目录创建一个/data/db文件夹用来作为默认数据库目录。
bash 复制代码
sudo mkdir -p /data/db
  1. 打开命令行输入/usr/local/mongodb/bin/
bash 复制代码
./mongod
  1. 打开浏览器,输入localhost:27017 ,会出现这样一行文字。

  2. 重新打开命令行,输入mongo(若报命令未找到问题,下边有解决办法)

安装过程中的问题及其解决方案

虽然最后知道是自己吃了没文化的亏,一直纠结于mongo指令not found,一直在解决这个问题,其实正确的运行指令应该是 mongosh,但是也将网上的一些针对mongo指令未找到的问题修复方法列举在这里。

zsh: command not found: mongo

解决办法:

1. 查看 mongodb formulae

bash 复制代码
brew list

2. 查看并复制mongodb安装目录

bash 复制代码
brew list mongodb-community
----------------------------------------------------------------------
/opt/homebrew/Cellar/mongodb-community/7.0.2/bin/install_compass

/opt/homebrew/Cellar/mongodb-community/7.0.2/bin/mongod

/opt/homebrew/Cellar/mongodb-community/7.0.2/bin/mongos

/opt/homebrew/Cellar/mongodb-community/7.0.2/homebrew.mxcl.mongodb-community.plist

/opt/homebrew/Cellar/mongodb-community/7.0.2/macos_mongodb.plist

/opt/homebrew/Cellar/mongodb-community/7.0.2/MPL-2

/opt/homebrew/Cellar/mongodb-community/7.0.2/THIRD-PARTY-NOTICES
---------------------------------------------------------------------------

3. 更新 .zshrc 文件

bash 复制代码
vi ~/.zshrc

# 让文件生效 brew方式安装
export PATH="/opt/homebrew/Cellar/mongodb-community/7.0.2/bin/:${PATH}"

# 压缩包安装
export PATH="/usr/local/mongodb/bin/:${PATH}"

4.让文件生效

bash 复制代码
export PATH="$PATH:$HOME/.rvm/bin"
source ~/.bash_profile

source ~/.zshrc

如果还没有解决尝试运行 : brew install mongodb-community-shell(下载 mongodb 时它缺少 shell 所以在终端中输入 mongo 时也不起作用

如果还是不生效,那就是所安装版本运行的不是mongo而是mongosh

complete:13: command not found: compdef

产生原因:

Compdef 基本上是 zsh 用于加载自动完成的函数。需要激活完成系统。 如果您使用的是 oh-my-zsh 之类的东西,那么这已经解决了,否则您需要将以下内容添加到您的 ~/.zshrc

解决办法:

bash 复制代码
# 输入以下命令
vi ~/.zshrc
# 编辑器此时打开了`.zshrc`文件 
# 将以下代码加入到文件内容顶部 

autoload -Uz 
compinit compinit

data/db: Read-only file system解决办

bash 复制代码
mkdir ~/data 
//进入到~/data目录
cd ~/data
//查看目录路径
pwd
//路径需要换成你自己电脑上面的路径
sudo mongod --dbpath=/Users/xxx/data
相关推荐
杨荧2 小时前
基于大数据的美食视频播放数据可视化系统 Python+Django+Vue.js
大数据·前端·javascript·vue.js·spring boot·后端·python
cmdyu_2 小时前
如何解决用阿里云效流水线持续集成部署Nuxt静态应用时流程卡住,进行不下去的问题
前端·经验分享·ci/cd
WordPress学习笔记2 小时前
根据浏览器语言判断wordpress访问不同语言的站点
前端·javascript·html
yuanmenglxb20042 小时前
解锁webpack核心技能(二):配置文件和devtool配置指南
前端·webpack·前端工程化
牛客企业服务2 小时前
AI面试系统助手深度评测:6大主流工具对比分析
数据库·人工智能·python·面试·职场和发展·数据挖掘·求职招聘
JefferyXZF3 小时前
Next.js 路由导航:四种方式构建流畅的页面跳转(三)
前端·全栈·next.js
啃火龙果的兔子3 小时前
React 多语言(i18n)方案全面指南
前端·react.js·前端框架
kebeiovo3 小时前
Redis的五个基本类型(2)
数据库·redis·缓存
阿奇__3 小时前
深度修改elementUI样式思路
前端·vue.js·elementui
花途Jasmine3 小时前
MySQL中的DDL(一)
数据库·mysql