Mám podobný problém, upgradoval jsem na Ubuntu 16.04 z MongoDB 3.4 na 3.6, ale tento důležitý krok jsem vynechal
db.adminCommand( { setFeatureCompatibilityVersion: "3.4" } )
Pak musím provést downgrade na 3.4 a poté znovu upgradovat na 3.6. Zde jsou podrobné kroky:
1. Odinstalujte 3.6
Zálohujte /etc/mongod.conf
Záloha /etc/apt/sources.list.d/mongodb-org-3.6.listed
(přejmenujte nebo přesuňte do jiné složky)
sudo apt-get update
sudo apt-get remove mongodb-org-mongos mongodb-org-server mongodb-org-shell mongodb-org-tools
2. Znovu nainstalujte 3.4
Zkontrolujte složku /etc/apt/sources.list.d/
zda tento soubor existuje nebo ne:mongodb-org-3.4.list
.Pokud neexistuje, můžete jej znovu vytvořit tímto příkazem:
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
poté nainstalujte pomocí apt-get
sudo apt-get update
sudo apt-get install -y mongodb-org
mongod --version
sudo systemctl start mongod
V mém případě příkaz systemctl start mongod
return error Failed to start mongod.service: Unit mongod.service not found
Vyřešil jsem to pomocí těchto příkazů:
sudo systemctl enable mongod
sudo service mongod restart
sudo service mongod status
3. Proveďte velmi důležitý příkaz
Po downgradu na 3.4 spusťte toto
mongo
MongoDB shell version v3.4.10
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.10
> db.adminCommand( { setFeatureCompatibilityVersion: "3.4" } )
{ "featureCompatibilityVersion" : "3.4", "ok" : 1 }
> exit
4. Znovu upgradujte 3.6
Obnovit tento soubor /etc/apt/sources.list.d/mongodb-org-3.6.listed
sudo apt-get update
sudo apt-get install mongodb-org-mongos mongodb-org-server mongodb-org-shell mongodb-org-tools
Obnovte /etc/mongod.conf
. Nyní se MongoDB 3.6 spustil bez problémů