Mac启动MongoDB报错:exception in initAndListen: NonExistentPath: Data directory /data/db not found., term

Posted Nayek

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mac启动MongoDB报错:exception in initAndListen: NonExistentPath: Data directory /data/db not found., term相关的知识,希望对你有一定的参考价值。

这是主要错误:

initAndListen中的异常:NonExistentPath:找不到数据目录/ data / db

Catalina发生了令人惊讶的更改:它不允许更改根目录(这也在论坛主题中进行了讨论):

% sudo mkdir -p /data/db
mkdir: /data/db: Read-only file system

不幸的是,除了在Catalina功能中简短提及之外,这在Apple的Catalina发行说明中没有明确说明:

macOS Catalina在专用的只读系统卷中运行

由于该目录/data/db被编码为MongoDB默认目录,因此一种解决方法是指定一个dbpath不在根目录上的目录。例如:

mongod --dbpath ~/data/db

这会将MongoDB的数据放在您的主目录中。只要确保该路径~/data/db确实存在。

替代方法

一种替代方法是通过利用macOS上的在macOS上安装MongoDB社区版中的说明进行操作brew

brew tap mongodb/brew
brew install mongodb-community

默认情况下,这将创建一些其他文件:

  • 配置文件(/usr/local/etc/mongod.conf)
  • 日志目录路径(/ usr / local / var / log / mongodb)
  • 数据目录路径(/ usr / local / var / mongodb)
    要运行,mongod您可以:
  • 从命令行手动运行命令(为方便起见,可以使用别名):
mongod --config /usr/local/etc/mongod.conf
  • 使用来将MongoDB作为服务运行brew services。请注意,这会将MongoDB作为独立节点(而不是副本集)运行,因此取决于oplog的功能(例如changestream)将无法工作,除非您修改mongod配置文件:
brew services start mongodb-community

参考博客:https://stackoverflow.com/questions/58283257/mongodb-cant-find-data-directory-after-upgrading-to-mac-os-10-15-catalina

以上是关于Mac启动MongoDB报错:exception in initAndListen: NonExistentPath: Data directory /data/db not found., term的主要内容,如果未能解决你的问题,请参考以下文章

解决mongodb服务启动 Permission denied:exception in ...

已解决com.mongodb.MongoSocketOpenException: Exception opening socket

PySpark local模式执行读取mongodb报错 Exception: Java gateway process exited before sending its port number(代

MAC中mongodb的连接遇到的问题及调试

Mac Jenkins 生成allure报告 报错ERROR: Step ‘Allure Report’ aborted due to exception:

MongoDB exception: connect failed