无法启动mongod服务,因为找不到数据文件夹



我创建了文件夹/var/lib/mongodb/data/dbsudo

我在.conf文件更改为以下内容:dbpath=/var/lib/mongodb/data/db,因为它似乎是mongodb使用的默认值,对吧?

所以我尝试sudo mongod,我仍然得到

exception in initAndListen: 29 Data directory /data/db not found., terminating

我尝试sudo service mongod start,我得到日志错误:

Unable to create/open lock file: /var/lib/mongodb/data/db/mongod.lock errno:13 Permission denied Is a mongod instance already running?

mongodb用户/var/lib/mongodb/data/db的用户权限如下:drwxr-xr-x mongodb mongodb mongodb(与root相同)

我在我的用户上运行ps aux | grep mongodb,并且有一个进程正在运行,但我无法停止它。它会随操作系统自动启动。发生了什么事?为什么我不能设置该死的默认数据库数据路径?

我认为,问题是在~之前你的路径。如果mongodb作为服务运行,则运行mongodb的用户为mongodb

如果你想将mongod作为服务运行,不要使用home directory快捷方式,而是使用db目录的全路径。

我建议你保存mongoDB数据库在/var/opt文件夹。不在/home文件夹中,你应该确保用户权限是mongodb

mongodb在Ubuntu上使用的是/etc/mongod.conf。如果你使用以前的配置格式,你应该修改dbPath配置(在ubuntu中,默认是以前的格式)。

要停止服务自动启动,你应该使用sudo service mongod stop

在你的问题中,我认为不是mongod service运行对吗?在这种情况下,你应该找到启动程序。你使用的是哪个版本的ubuntu和mongodb ?如果你使用的是ubuntu 2.6,通常情况下,它是用upstart服务启动的。参见/etc/init/mongod.conf
中的配置文件

相关内容

最新更新