运行时 Mongodb 得到 NonExistentPath: 找不到数据目录 /data/db,正在终止



执行时生成的错误sudo mongod执行

2018-09-13T20:56:08.259+0530 I CONTROL  [initandlisten] MongoDB starting : pid=3419 port=27017 dbpath=/data/db 64-bit host=admin
2018-09-13T20:56:08.260+0530 I CONTROL  [initandlisten] db version v3.6.7    
2018-09-13T20:56:08.260+0530 I CONTROL  [initandlisten] git version: 2628472127e9f1826e02c665c1d93880a204075e
2018-09-13T20:56:08.260+0530 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.1f 6 Jan 2014
2018-09-13T20:56:08.260+0530 I CONTROL  [initandlisten] allocator: 
tcmalloc
2018-09-13T20:56:08.260+0530 I CONTROL  [initandlisten] modules: none
2018-09-13T20:56:08.260+0530 I CONTROL  [initandlisten] build environment:
2018-09-13T20:56:08.260+0530 I CONTROL  [initandlisten]     distmod: ubuntu1404
2018-09-13T20:56:08.260+0530 I CONTROL  [initandlisten]     distarch: x86_64
2018-09-13T20:56:08.260+0530 I CONTROL  [initandlisten]     target_arch: x86_64
2018-09-13T20:56:08.260+0530 I CONTROL  [initandlisten] options: {}
2018-09-13T20:56:08.312+0530 I STORAGE  [initandlisten] exception in initAndListen: NonExistentPath: Data directory /data/db not found., terminating
2018-09-13T20:56:08.312+0530 I CONTROL  [initandlisten] now exiting
2018-09-13T20:56:08.312+0530 I CONTROL  [initandlisten] shutting down with code:100

我是 MEAN 堆栈应用程序开发的初学者,并坚持使用此错误。请帮助我。提前致谢

这个解决方案解决了我的问题

  1. 将目录设为

    sudo mkdir -p/data/db

  2. 这将使一个名为db的目录,然后尝试从命令开始

    须藤君神

如果您在启动 mongod 时遇到其他错误或问题,您可能会发现问题为

无法设置侦听器:套接字异常:地址已在使用 如果您发现另一个错误,则必须通过键入终端来杀死mongod的运行进程

ps ax | grep mongod

找到 mongod 运行端口并终止进程。

sudo kill ps_number 

另一种方法是在启动 mongod 时制作一个特定的端口

sudo mongod --port 27018
cd ~
mongod

您需要执行上述步骤的所有操作来防止错误。

不要在不同的本地磁盘位置运行 mongod。

例如。我的计算机有两个本地磁盘:

1.( 本地磁盘 E: - 驱动器 :(当我在 E: 驱动器或针对 E 本地磁盘上的任何位置运行 mongod 时,我将收到错误消息,因为(

Admin@DESKTOP-CJBHIMO MINGW64 /e/Full-Stack-Developer
$ mongod
...
{"t":{"$date":"2021-03-22T11:33:26.675+05:30"},"s":"E",  "c":"STORAGE",  "id":20557,   "ctx":"initandlisten","msg":"DBException in initAndListen, terminating","attr":{"error":"NonExistentPath: Data directory E:\data\db\ not found. Create the missing directory or specify another path using (1) the --dbpath command line option, or (2) by adding the 'storage.dbPath' option in the configuration file."}}
...
{"t":{"$date":"2021-03-22T11:33:26.677+05:30"},"s":"I",  "c":"CONTROL",  "id":23138,   "ctx":"initandlisten","msg":"Shutting down","attr":{"exitCode":100}}

{"error":"NonExistentPath: data directory E:\data\db\ not found。

2.( 本地磁盘 C: - 驱动器 : (当我在 C: 驱动器上运行 mongod 时,我建议使用,因为我们主要按照说明在 C: 驱动器上安装 mongodb。如果您的情况是安装在另一个驱动器上,请在 hyper 上该驱动器的文件夹上运行 mongod。例如。当我在 C 上运行 mongod 时:

Admin@DESKTOP-CJBHIMO MINGW64 ~/Desktop
$ mongod
{"t":{"$date":"2021-03-22T00:52:23.840-07:00"},"s":"I",  "c":"STORAGE",  "id":22270,   "ctx":"initandlisten","msg":"Storage engine to use detected by data files","attr":{"dbpath":"C:/data/db/","storageEngine":"wiredTiger"}}
...
{"t":{"$date":"2021-03-22T11:34:59.300+05:30"},"s":"I",  "c":"NETWORK",  "id":23016,   "ctx":"listener","msg":"Waiting for connections","attr":{"port":27017,"ssl":"off"}}
">

msg":"数据文件检测到要使用的存储引擎","attr":{"dbpath":"C:/data/db/","storageEngine":"wiredTiger"}}

整个示例基于 Windows 10。它在根目录上运行成功,因为它位于 C: 磁盘内。要进入根目录:

只需运行

sudo mkdir -p /data/db

在运行 mongoDB 服务器的机器上

在执行任何其他解决方案之前,请在此处查看我的答案。 也许由于过时的选项或格式更改,您的conf文件被拒绝。

与其像上面的答案那样创建新的目录,不如指定你喜欢 mongo 将在当前 or or 路径上运行,这样:

mongod --dbpath .

最新更新