İlk MongoDb'mi kurmak için MongoDb Belgelerini takip ettim,
MongoDB'yi komutu kullanarak başlattığımda
C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe
İlk MongoDb'mi kurmak için MongoDb Belgelerini takip ettim,
MongoDB'yi komutu kullanarak başlattığımda
C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe
Yanıtlar:
MongoDB, veritabanını depolamak için bir klasöre ihtiyaç duyar. Bir C:\data\db\dizin oluşturun :
mkdir C:\data\db
ve ardından MongoDB'yi başlatın:
C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe
Bazen C:\data\dbönceki kurulum nedeniyle klasör zaten mevcuttur. Yani bu nedenle mongod.exeişe yaramazsa, C:\data\dbklasördeki tüm içeriği silebilir ve mongod.exetekrar çalıştırabilirsiniz .
/mongodb_data/db
MacOS kullanıcılarının bu sorunu çözmesi için:
Aşağıdaki adımları izlemeniz gerekir:
"Db" dizinini oluşturun. Mongo veri dosyalarının yaşayacağı yer burasıdır. Aşağıdakileri çalıştırarak dizini varsayılan konumda oluşturabilirsiniz:
sudo mkdir -p /data/db
Şunları /data/dbçalıştırarak dizinin doğru izinlere sahip olduğundan emin olun :
sudo chown -R `id -un` /data/db
Artık hazırsınız sudo mongodve Mongo sunucusunu başlatmak için koşabilirsiniz .
Sadece koşarsan çalışmıyor mongod
Kaynak .
mkdir: /data/db: Read-only file systemİlk komutu çalıştırdığımda anladım . Bunu nasıl düzeltebilirim? Teşekkür ederim.
Mac'imde (Brew kullanarak) aynı sorun şu şekilde çözüldü:
sudo mongod
C:\data\dbWindows'ta varsayılan db klasörünü değiştirmek için komut şu şekildedir :
--dbpath
Örneğin:
\mongod --dbpath C:\myfolder
Mac Kullanıcıları
MongoDB'yi aşağıdakilerle çalıştırmak yerine:
sudo mongod
Bunun mongodyerine şunları kullanabilirsiniz :
sudo chmod -R ugo+rw datasudoMongodb ( sudo mongod) çalıştırırken kullanmanız gerekiyorsa , bu, mongodb veri klasöründe okuma ve yazma izniniz olmadığı anlamına gelir.
Lütfen aşağıdaki adımları uygulayın:
Diğer arkadaşların da bahsettiği gibi, veritabanı verilerinizin depolanması için önce bir dizin oluşturmalısınız. Bu klasör şunun gibi bir şey olabilir:
C: \ mongo-verileri
Komut satırından mongodb'yi kurduğunuz yere ve mongod.exe'nin bulunduğu yere gidin. Benim durumumda tam yol:
C: \ Program Dosyaları \ MongoDB \ Sunucu \ 3.4 \ bin
Buradan mongod.exe dosyasını çalıştırın ve birinci adımda oluşturduğunuz klasörün yolunu --dbpath bayrağını kullanarak aşağıdaki gibi iletin:
mongod.exe --dbpath "C: \ mongo-data"
Lütfen Dikkat : Windows'taysanız, düzgün çalışması için yukarıdaki çift tırnak ("") kullanmanız gerekir.
Bu şekilde aşağıdaki gibi bir şey elde edeceksiniz:
2017-06-14T12:45:59.892+0430 I NETWORK [thread1] waiting for connections on port 27017
Pencerelerde tek tırnak ('') kullanırsanız, şunları elde edersiniz:
2017-06-14T01:13:45.965-0700 I CONTROL [initandlisten] shutting down with code:100
Sorunun çözülmesine yardımcı olacağını umuyoruz.
Mongo DB demon'u mongodkomutla çalıştırmak için bir veritabanı dizininiz olmalıdır, muhtemelen çalıştırmanız gerekir:
mkdir C:\data\db
Ayrıca, MongoDB'nin bu dizin için bir yazma iznine sahip olması veya süper kullanıcı izinleriyle çalıştırılması gerekir sudo mongod.
Mongodb'yi başlatmaya çalıştığımda (mac os'da) aşağıdaki hatayı almaya devam ettim.
"shutting down with code:100"
Şu komutu kullanıyordum:
./mongod --dbpath=~/mongo-data
Benim için düzeltme, "=" işaretine ihtiyacım olmamasıydı ve bu hataya neden oluyordu. Ben de yaptım
./mongod --dbpath ~/mongo-data
Bunu oraya atmak istedim çünkü hata hiçbir şekilde sorunun bu olduğunu belirtmiyor. Bunun yardımcı olup olmadığını görmek için neredeyse ~ / mongo-data dizininin içeriğini kaldırdım. İyi ki, cli arg'lerin bazen "=" işaretini kullanmadığını hatırladım.
ilk önce MongoDB'nin verileri depoladığı bir veri dizini oluşturmanız gerekir. MongoDB'nin varsayılan veri dizini yolu, MongoDB'yi başlattığınız sürücüdeki mutlak yol \ data \ db'dir.
C: / sürücüsüne kurduysanız data \ db dizini oluşturmanız gerekir. bu çalıştırma komutunu cmd'de yapmak için
C:\>mkdir data\db
MongoDB'yi başlatmak için mongod.exe'yi çalıştırın.
"C:\Program Files\MongoDB\Server\4.2\bin\mongod.exe" --dbpath="c:\data\db"
--Dbpath seçeneği veritabanı dizininizi işaret eder.

MongoDB'ye bağlanın.
"C:\Program Files\MongoDB\Server\4.2\bin\mongo.exe"
tüm işleri iyi kontrol etmek için:
show dbs
1. Hata gösteriyorsa (100 koduyla kapatma) bu, dosyanın istenen konumunu bulamadığı anlamına gelir.
1.a macOS Catalina'dan önceyse, sudo mkdir -p / data / db ile dizin oluşturun ve onu kullanmak için izin verin
sudo chown -Rid -un / data / db .
1.b eğer macOS Catalina'dan sonra sudo mkdir -p / System / Volumes / data / db yapın ve ona sudo chown -R id -un/ System / Volumes / data / db izinlerini verin .
2. mongo db brew hizmetlerini başlatmak mongodb topluluğu çalıştırmak
3. Mongod veya mongod yazın --dbpath / System / Volumes / Data / data / db
Ve eğer mongod hata gösterirse (kod 48 ile kapatılırsa) bu
, bağlantı noktasının zaten kullanıldığı anlamına gelir, böylece iki şey yapabilirsiniz
4.a Ya
mongod --dbpath / System / Volumes / Data / data / db —port 27018 port numarasını belirterek mongod portunu değiştirirsiniz.
4.b Veya sudo lsof -i: 27017 ile işlemi bularak bu bağlantı noktasındaki işlemi öldürebilir ve ardından komutla öldürebilirsiniz.
kill -9 öldürebilirsiniz.
5. 2. ve 3. adımları tekrarlayın.
MacOS kullanıcıları için aşağıdaki sorunla ilgilenin:
MongoDB Community'yi macOS'a .tgz Tarball kullanarak yüklüyorsanız
(( MacOS 10.15 Catalina'dan itibaren Apple, MongoDB varsayılan / data / db veri dizinine erişimi kısıtlar. MacOS 10.15 Catalina'da, / usr / local / var / mongodb gibi farklı bir veri dizini kullanmanız gerekir. ))
aşağıdaki gibi çözebilirsiniz:
(MacOS Catalina'dan itibaren)
Apple, güvenlik amacıyla Catalina'da yeni bir Birim oluşturdu. Catalina üzerindeyseniz, System / Volumes / Data'da / data / db klasörünü oluşturmanız gerekir.
Bu komutu kullanın:
sudo mkdir -p /System/Volumes/Data/data/db
Ardından, izin vermek için bu komutu kullanın:
sudo chown -R `id -un` /System/Volumes/Data/data/db
bu normalin yerini alacak
sudo mkdir -p /data/db
Aşağıdaki komutu çalıştırarak / data / db dizininin doğru izinlere sahip olduğundan emin olun:
sudo chown -R `id -un` /data/db
mongoDB'yi bitirip başlattıktan sonra terminalde aşağıdakileri kullanabilirsiniz:
sudo mongod --dbpath /System/Volumes/Data/data/db
In MacOS : -
Mongo sunucusunu çalıştırırken önceden oluşturulmuş veritabanının yolunu vermeyi unuttuysanız yukarıdaki hata görünecektir.
sudo ./mongod --dbpath ../../mongo-data/
Not: - ./mongod && ../../mongo-data göreceli yoldur. Böylece ortam değişkeninde yapılandırarak bundan kaçınabilirsiniz.
Zaten dizine sahipseniz, dir izinlerini kontrol edin veya mongo'yu sudo ile yeniden başlatmayı deneyin. sudo brew hizmetleri mongodb'yi başlat
Benim durumumda, benzer bir hata aldım ve bu oluyordu çünkü kök kullanıcıyla mongod çalıştırmıştım ve bu sadece kök tarafından erişilebilen bir günlük dosyası oluşturmuştu. Bunu, sahipliği kökten normalde çalıştırdığınız kullanıcıya değiştirerek düzeltebilirim. Günlük dosyası / var / lib / mongodb / journal / dizinindeydi.
Virtualbox kullanıyorsunuz VM'nizi kontrol edin.
docker-machine ssh
df -h
Eğer boş alanınız yoksa dev / sda1'e bakın, bunun nedeni çok sayıda görüntü veya kapsayıcı olabilir. "docker rm" ve "docker rmi" kullanarak bunları kaldırabilirsiniz
Aravind.
Benim de başıma geldi çünkü Görev Yöneticisi tarafından MongoDB'yi durdurdum.
Yaratmak \ Data \ db: C klasörü ve en MongoDB başlayan C: \ Program Files \ MongoDB \ 3.4 \ bin \ mongod.exe \ Sunucu cespon önerildiği gibi, benim için çalıştı, ama MongoDB benim Veritabanları herhangi göstermedi önceden oluşturulmuş.
Ardından, C: \ data \ db klasörünü kaldırıp MongoDB yükleyicisiyle kurulumu onararak verilerimi kurtardım ve normal olarak MongoDB'yi başlattım.
(MongoDB konusunda çok yeniyim, ancak bu sorunu çözmeme yardımcı oldu ve önizleme verilerini kurtarabilir).
yazılan mongod ve hata alma
Hatalar:
initAndListen'deki istisna: NonExistentPath: Veri dizini / data / db bulunamadı., sonlandırılıyor
Code 100 ile kapanıyor
Sonra deneyin (tüm izinlerle veri ve db klasörü oluşturun)
mongod --dbpath = / veri
yeni sekme kullanın ve mongo yazın.
Hala probla karşı karşıyaysanız, mac catalina'yı kontrol edebilirsiniz: ( https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x-tarball/ )
Windows için: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows-unattended/
C:\data\db\bulunamadığını belirten bir satır vardır . Kullanın:mkdir C:\data\db