Ana dizinde yeni bir klasör oluşturmaya çalışıyorum
Her türlü örneği denedim
sudo mkdir /data/db
sudo mkdir -p /data/db
Almaya devam ediyorum
mkdir: / data: Salt okunur dosya sistemi
Ana dizinde yeni bir klasör oluşturmaya çalışıyorum
Her türlü örneği denedim
sudo mkdir /data/db
sudo mkdir -p /data/db
Almaya devam ediyorum
mkdir: / data: Salt okunur dosya sistemi
Yanıtlar:
Mac'iniz varsa ve Catalina'ya güncellediyseniz, kök klasör artık yazılabilir değildir.
Dizini başka bir yerde değiştirdim.
Şimdilik bu komutu kullanıyorum
mongod --dbpath=/Users/user/data/db
resmi belgelerden https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/
homebrew kurun ve aşağıdaki komutları çalıştırın
sudo chown -R $(whoami) $(brew --prefix)/*
sonra
brew tap mongodb/brew
sonra
brew install mongodb-community@4.2
ve
brew services start mongodb-community
veya
mongod --config /usr/local/etc/mongod.conf
sonra
ps aux | grep -v grep | grep mongod
ve
mongo
show dbsmongo kabuğunda koşabileceğinizi doğrulamak için
Yeni macOS Catalina güncellemesiyle, klasör /data/dbsalt okunur hale gelir, onu değiştiremezsiniz. Başka bir klasörde bir DB oluşturmak için bu prosedürü izleyin:
mongodDizini değiştir :
sudo mongod --dbpath /System/Volumes/Data/data/db
Olarak kullanmak için bir takma ad verin mongod:
alias mongod="sudo mongod --dbpath /System/Volumes/Data/data/db"
Sadece mongodterminalinizi yazın, çalışmalıdır.
Ekstra => Mevcut kullanıcı haklarını vermeniz gerekiyorsa, bu kod satırını kullanın:
sudo chown -R $(whoami) /System/Volumes/Data/data/db
(Sadece bilgi için -> $(whoami)sadece mevcut kullanıcınızı döndüren bir değişkendir)
Mongod dbklasörünün yolunda kalıcı bir değişiklik yapmak için .
Bu belgelerin ardından kabaca şunu söylüyorlar. Mongod, demleme hizmetleri ile başlatılırsa:
$ brew services start mongodb-community@4.2
Yolda yapılandırma dosyasını kullanacak /usr/local/etc/mongod.conf
Bunu düzeltmek için yapılandırma dosyasını düzenleyin:
$ vim /usr/local/etc/mongod.conf
Ve dbPathörneğin ana dizininize şu şekilde değiştirin:
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
Dosyayı kaydedin ve mongod'u brew ile yeniden başlatın:
$ brew services restart mongodb-community@4.2
Bir Udemy kursuna giderken benim için işe yarayan şey buydu: 1. Bunu terminalinize yazarak HomeBrew'u yükleyin
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Eski / data / db klasörünüzü (mevcut dbs'nizi yedeklemek istiyorsanız) kök olmayan bir klasöre taşıyın ve bir sonraki adıma geçin
Terminalde çalıştırın a) brew uninstall mongodb
b) Gerekirse çalıştırın brew uninstall --force mongodb
c) brew tap mongodb/brew
d) brew install mongodb-community
e)brew services start mongodb/brew/mongodb-community
Şimdi ihtiyacınız olan tek şey, Terminal'de mongo çalıştırmak ve mongo kabuk sembolünü> göreceksiniz.
Lütfen bunun işe yarayıp yaramadığını bana bildirin;) Bu makaleye dayanarak anlamam neredeyse 2 saatimi aldı: /apple/362883/mongodb-doesnt-work-after-update-to -makos-katalina-10-15
Şerefe, Radu
Dolayısıyla, macOS Catalina ile Apple, güvenlik amacıyla yeni bir Birim oluşturdu. MacOS Catalina kullanıyorsanız, /data/dbklasörü içinde oluşturmanız gerekir System/Volumes/Data.
Bu komutları izleyin
sudo mkdir -p /System/Volumes/Data/data/dbsudo chown -R id -un /System/Volumes/Data/data/dbMongoDB'yi başlatın
brew services run mongodb-community
Keyfini çıkarın 😉
Mongodb topluluğu Formülü için Varsayılan Yollar
MongoDB sunucusunu ve araç ikili dosyalarını kurmanın yanı sıra, mongodb topluluğu formülü şunları yaratır:
sonra benim için çalıştı:
mkdir -p usr/local/var/mongodb/data/db
https://www.apple.com/macos/catalina/features/
macOS Catalina, ayrılmış, salt okunur bir sistem biriminde çalışır; bu, diğer tüm verilerden tamamen ayrı olduğu ve macOS'in güvenilirliğini artırmaya yardımcı olduğu anlamına gelir.
# macOS Catalina, mkdir path
$ sudo mkdir -p /System/Volumes/Data/data/db
# give permissions
$ sudo chown -R `id -un` /System/Volumes/Data/data/db
# macOS 10.14.x -
$ sudo mkdir -p /data/db
# macOS 10.15.x +
$ sudo mkdir -p /System/Volumes/Data/data/db
https://discussions.apple.com/thread/250720711
MacOS Catalina ile artık dosyaları veya verileri salt okunur sistem biriminde depolayamaz ve Terminal gibi komut satırından "kök" dizine (/) yazamazsınız.
Bir /data/dizin oluşturamazsınız . Bu, APFS dosya sistemi için ayrılmıştır. Kontrol Bombich en bu konuda blog.
Apple'ın bunu neden yaptığını kaybettim .. Peki şimdi onlarınki dışında herhangi bir kök seviyesinde dizinimiz olamaz mı? Bu hiçbir anlam ifade etmiyor ve bu klasörleri kök ayrıcalıklarıyla oluşturan insanlar ne yaptıklarını biliyor
Mac sürümü Catalina, kök klasörün artık yazılabilir olmamasını sağladı.
Brew, yeni bir yolu (kendi oluşturduğu) kullanmak için güncellenmiş bir mongodb sürümüne sahiptir /usr/local/var/mongodbve bu talimatları takip etmek sorunu çözecektir:
Güncellenmiş mongodb topluluğu sürümünü yükleme kılavuzu
brew install mongodb-community@VERSION düzeltmeye sahip ilk SÜRÜM 4.2'dir
Mongodb'u catalina'ya kurmak ve çalıştırmak için basit adımlarla bir öz oluşturuyorum
# install homebrew (https://brew.sh/) and run the following commands
sudo chown -R $(whoami) $(brew --prefix)/*
brew tap mongodb/brew
brew install mongodb-community@4.2
## --- aliases to set in your zshrc file
# open your zshrc file
open ~/.zshrc
# copy and paste shorcuts in the end of the file
alias mongod='brew services run mongodb-community'
alias mongod-start='brew services start mongodb-community' #will start MongoDB automatically when you login into your Macbook
alias mongod-status='brew services list'
alias mongod-stop='brew services stop mongodb-community'
# restart your terminal
# type mongod in your terminal for run service & mongod-stop for finish it
# test your mongodb connection with
mongo
show dbs
https://gist.github.com/sturmenta/cf19baa91b1d79d8ae2b305fb7e1f799
David Buck'ın burada yazdıklarına eklemek için , önce dizini gerçekten yapmanız gerekir. Bunu şununla yapabilirsiniz:
sudo mkdir / Sistem / Birimler / Veri / veri / db
Bu hatayı alıyorsanız:
"Komut satırı ayrıştırılırken hata oluştu: tanınmayan seçenek '--dbpath / System / Volumes / Data / data / db' try 'mongod --help' for more information"
takma adı oluşturduktan sonra, bunun nedeni David Buck (gerçekten yararlı bir yorum yaparken) yanıtında bir boşluk bırakmış olmasıdır.
Bunu düzeltmek için yazın
unalias mongod
ve sonra yazın
alias mongod = "sudo mongod --dbpath / System / Volumes / Data / data / db"