Dav*_*ina 23 macos terminal mongodb
我正在尝试在主目录中创建一个新文件夹
尝试了各种例子
sudo mkdir /data/db
sudo mkdir -p /data/db
我不断
mkdir:/ data:只读文件系统
Eug*_*aev 37
随着新的 macOS Catalina 更新,该文件夹/data/db变为只读,您无法对其进行修改。按照以下步骤在另一个文件夹中创建一个数据库:
更改mongod目录:
sudo mongod --dbpath /System/Volumes/Data/data/db
给它一个别名以将其用作mongod:
alias mongod="sudo mongod --dbpath /System/Volumes/Data/data/db"
只需输入mongod您的终端,它应该可以工作。
额外=> 如果您需要为其授予当前用户权限,请使用以下代码行:
sudo chown -R $(whoami) /System/Volumes/Data/data/db
(仅供参考 ->$(whoami)只是一个返回当前用户的变量)
Dav*_*ina 28
如果您拥有Mac并已更新到Catalina,则根文件夹不再可写。
我只是在其他地方更改了目录。
暂时使用此命令
mongod --dbpath=/Users/user/data/db
Run Code Online (Sandbox Code Playgroud)
Jir*_*rik 12
永久更改 mongoddb文件夹的路径。
遵循这些文档,他们大致说了这一点。如果 mongod 是用 brew 服务启动的:
$ brew services start mongodb-community@4.2
Run Code Online (Sandbox Code Playgroud)
它将在路径中使用配置文件 /usr/local/etc/mongod.conf
要解决此问题,请编辑配置文件:
$ vim /usr/local/etc/mongod.conf
Run Code Online (Sandbox Code Playgroud)
并将dbPatheg更改为您的主目录,如下所示:
systemLog:
destination: file
path: /usr/local/var/log/mongodb/mongo.log
logAppend: true
storage:
dbPath: /Users/<username>/data/db
net:
bindIp: 127.0.0.1
Run Code Online (Sandbox Code Playgroud)
保存文件并使用 brew 重新启动 mongod:
$ brew services restart mongodb-community@4.2
Run Code Online (Sandbox Code Playgroud)
xgq*_*rms 10
https://www.apple.com/macos/catalina/features/
macOS Catalina 在专用的只读系统卷中运行——这意味着它与所有其他数据完全分离,有助于提高 macOS 的可靠性。
# macOS Catalina, mkdir path
$ sudo mkdir -p /System/Volumes/Data/data/db
# give permissions
$ sudo chown -R `id -un` /System/Volumes/Data/data/db
Run Code Online (Sandbox Code Playgroud)
# macOS 10.14.x -
$ sudo mkdir -p /data/db
# macOS 10.15.x +
$ sudo mkdir -p /System/Volumes/Data/data/db
Run Code Online (Sandbox Code Playgroud)
https://discussions.apple.com/thread/250720711
https://zellwk.com/blog/install-mongodb/
https://www.youtube.com/watch?v=DX15WbKidXY
小智 6
来自官方文档https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/
安装自制程序并运行以下命令
sudo chown -R $(whoami) $(brew --prefix)/*
然后
brew tap mongodb/brew
然后
brew install mongodb-community@4.2
和
brew services start mongodb-community
要么
mongod --config /usr/local/etc/mongod.conf
然后
ps aux | grep -v grep | grep mongod
和
mongo
验证您可以show dbs在mongo shell中运行
小智 6
因此,为了安全起见,Apple 在 macOS Catalina 中创建了一个新的 Volume。如果您使用的是 macOS Catalina,则需要/data/db在System/Volumes/Data.
遵循这些命令
sudo mkdir -p /System/Volumes/Data/data/dbsudo chown -R 身份证号 /System/Volumes/Data/data/db启动MongoDB
brew services run mongodb-community
享受
我这样做了:
mkdir -p usr/local/var/mongodb/data/db
Run Code Online (Sandbox Code Playgroud)
因为新路径是“usr/local/var/mongodb”。
如果您使用的是 mac 并且面临这个问题,那么下面的命令很有用,
whoami变量将获取当前用户
mongod --dbpath=/Users/$(whoami)/data/db
Run Code Online (Sandbox Code Playgroud)
小智 5
mongodb-community 公式的默认路径
除了安装 MongoDB 服务器和工具二进制文件之外,mongodb-community 公式还创建了:
然后它对我有用:
mkdir -p usr/local/var/mongodb/data/db
Run Code Online (Sandbox Code Playgroud)