执行mongod命令启动MongoDB时报错该如何修复?
mongod启动失败退出码100解决方案
报错详情
执行
mongod后返回日志如下:2021-05-14T15:12:30.819-0400 I CONTROL [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols 'none' 2021-05-14T15:12:30.846-0400 I CONTROL [initandlisten] MongoDB starting : pid=60494 port=27017 dbpath=/data/db 64-bit host=Chris.local 2021-05-14T15:12:30.846-0400 I CONTROL [initandlisten] db version v4.2.3 2021-05-14T15:12:30.846-0400 I CONTROL [initandlisten] git version: 6874650b362138df74be53d366bbefc321ea32d4 2021-05-14T15:12:30.846-0400 I CONTROL [initandlisten] allocator: system 2021-05-14T15:12:30.846-0400 I CONTROL [initandlisten] modules: none 2021-05-14T15:12:30.846-0400 I CONTROL [initandlisten] build environment: 2021-05-14T15:12:30.846-0400 I CONTROL [initandlisten] distarch: x86_64 2021-05-14T15:12:30.846-0400 I CONTROL [initandlisten] target_arch: x86_64 2021-05-14T15:12:30.846-0400 I CONTROL [initandlisten] options: {} 2021-05-14T15:12:30.848-0400 I STORAGE [initandlisten] exception in initAndListen: NonExistentPath: Data directory /data/db not found., terminating 2021-05-14T15:12:30.849-0400 I NETWORK [initandlisten] shutdown: going to close listening sockets... 2021-05-14T15:12:30.849-0400 I - [initandlisten] Stopping further Flow Control ticket acquisitions. 2021-05-14T15:12:30.849-0400 I CONTROL [initandlisten] now exiting 2021-05-14T15:12:30.849-0400 I CONTROL [initandlisten] shutting down with code:100
错误原因
日志中明确提示NonExistentPath: Data directory /data/db not found,MongoDB默认会使用/data/db作为数据存储目录,当前系统中该目录不存在,因此启动失败,返回退出码100。
解决方法
方案1:使用默认数据目录
如果你希望继续使用MongoDB默认的存储路径,按以下步骤操作:
- Linux/macOS系统执行命令创建目录:
sudo mkdir -p /data/db - 给目录分配当前用户的读写权限,将下方命令中的
<你的用户名>替换为系统当前登录的用户名:sudo chown -R <你的用户名> /data/db
注:如果你使用的是macOS Catalina及以上版本,系统禁止直接在根目录创建文件夹,可以直接使用方案2。
方案2:指定自定义数据目录
你可以自己选择任意有读写权限的路径作为MongoDB的存储目录:
- 先在目标位置创建存储目录,比如在当前用户目录下创建
mongodb_data:mkdir ~/mongodb_data - 启动MongoDB时通过
--dbpath参数指定该目录即可:mongod --dbpath ~/mongodb_data
如果需要长期使用自定义路径,可以修改MongoDB配置文件中的storage.dbPath参数,后续启动时无需再手动指定路径。
内容的提问来源于stack exchange,提问作者user12954623
相关产品推荐
相关产品推荐

