mongodb数据库在Mac上的位置


91

我对mac和mongodb都是新手。

我有一个奇怪的疑问,访问在Mac上使用mongodb创建的数据库?

我知道,在Windows中有一个名为c:\ data \ db的文件夹,其中存储了我的数据库文件。

在Mac中如何以及在哪里存储数据库。

我记得做类似的事情

sudo mkdir -p /data/db
sudo chown `id -u` /data/db

在Mac上创建这样的文件夹,但是尽管我创建了数据库,但在此文件夹中没有找到任何数据库文件。

Mac上保存的数据库文件在哪里?

任何帮助将非常感激。

Answers:


93

MongoDB的默认数据目录为/data/db

可以通过命令行或配置文件中指定的dbpath选项来覆盖此设置。

如果您通过软件包管理器(例如Homebrew或MacPorts)安装MongoDB,这些安装通常会创建/ data / db以外的默认数据目录,并在配置文件中设置dbpath。

如果mongod在启动时提供了dbpath,则可以在mongoshell中检查该值:

db.serverCmdLineOpts()

您会看到类似以下的值:

"parsed" : {
    "dbpath" : "/usr/local/data"
},

1
还值得注意的是,您的mongod服务器不必以root用户身份运行。您确实需要确保您的数据目录权限包括mongod服务器正在使用的用户帐户的读/写访问权限。
Stennie 2012年

1
当我输入getCommandLineOpts()时,会得到类似“ ReferenceError:未定义getCommandLineOpts(shell):1”的内容。有帮助吗?
Spaniard89

4
您正在使用哪个版本的MongoDB?您应该可以通过进行检查db.serverStatus().version。我相信getCommandLineOpts()MongoDB 2.0中已添加了shell助手。您也可以尝试:db.getSiblingDB("admin").runCommand({getCmdLineOpts:1})
Stennie 2012年

我使用的是2.2.2版,当我尝试db.getSiblingDB("admin").runCommand({getCmdLineOpts:1})得到类似的内容时{ "argv" : [ "./bin/mongod" ], "parsed" : { }, "ok" : 1 },这是否表示我的数据库目录未设置?
Spaniard89

我知道了,我在根目录和子文件夹db中创建了一个名为data的文件夹。现在正在显示路径。非常感谢您的帮助。
Spaniard89


135

谢谢@Mark,我一直忘记这一遍。使用Homebrew安装MongoDB之后:

  • 数据库存储在/ usr / local / var / mongodb /目录中
  • mongod.conf文件在此处:/usr/local/etc/mongod.conf
  • 可以在/ usr / local / var / log / mongodb /中找到mongo日志
  • mongo二进制文件在这里:/ usr / local / Cellar / mongodb / [version] / bin

这打在了头上。谢谢
Mark Pieszak-Trilon.io 2015年

2
当我检查/ usr / local / var / mongodb /时,目录为空。不,我没有更改mongoldb的默认dbpath。您能帮我找到数据库文件吗?
Nishi Bangar

为它添加一个符号链接:sudo ln -s / usr / local / var / mongodb / data / db
TheJeff

我似乎没有有一个文件夹etc/usr/local/。配置文件在哪里,或者如何找出大声笑?
Reinier68

25

我在版本3.4.2中遇到了相同的问题

要运行它(如果您使用自制软件安装),请运行以下过程:

$ mongod --dbpath /usr/local/var/mongodb

通过Homebrew升级到v4.2.5后,此解决方案解决了我的问题。
Matthias Hagemann

10

我刚刚用homebrew安装了mongodb 3.4。(brew install mongodb)默认情况下它查找/ data / db

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/

这是mongod执行的输出。


9
这是如果您mongod直接从终端启动。如果使用brew services start mongodb,该过程将使用的配置文件/usr/local/etc/mongod.conf,这反过来,指定dbPath/usr/local/var/mongodb
Molomby

感谢@Molomby的贡献。我不是那样开始的,甚至我都不知道那样。:)
csonuryilmaz

1

环境:macOS Mojave 10.14.4

安装:自制软件

位置/usr/local/Cellar/mongodb/4.0.3_1

注意:如果通过更新版本 brew upgrade mongo,该文件夹4.0.4_1将被删除并替换为新版本文件夹

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.