web-dev-qa-db-fra.com

Comment installer une version antérieure de mongodb avec homebrew?

Je suis sur osx6.8 et dois installer une version antérieure de Mongodb. Comment installer une version antérieure avec HomeBrew? Le ci-dessous n'a pas fonctionné :( 

dream-2:app2 star$ brew install mongodb-2.6.10
Error: No available formula for mongodb-2.6.10 
Searching formulae...
Searching taps...
dream-2:app2 star$ 

(((** edit: je reçois un message pour expliquer en quoi ce message est unique par rapport à un autre, la réponse à l’autre question est très longue et complexe, elle est spécifique à postgresql et ne répond pas vraiment à ma question.) question.))) 

57
Agent Zebra

Lorsque vous essayez d'installer d'anciennes versions de quelque chose avec homebrew, il est généralement utile de commencer par brew search packagename; dans ce cas, il existe une version 2.6 disponible sous homebrew/versions/mongodb26

Donc, pour installer cette version:

brew install homebrew/versions/mongodb26
49
Cody Haines

J'ai la dernière version de Mongo installée, grâce à.

brew install mongodb

Mais je veux parfois passer à l'ancienne version. Tout d'abord, installez-le:

brew search mongo

brew install [email protected]

Maintenant, je veux 3.2 sur mon PATH au lieu de la dernière:

brew unlink mongodb

brew link --force [email protected]

(Il a besoin de --force car c'est un fût, ce qui signifie que c'est un binaire.)

Maintenant, j'ai 3.2 sur mon chemin. Je peux tuer la base de données en cours d'exécution et lancer ma base de données de test.

Quand j'ai fini, je peux revenir à la dernière version:

brew unlink [email protected]

brew link mongodb

Et redémarrez à nouveau.

146
joeytwiddle

J'ai pu l'installer en utilisant ces instructions:

Installation de MongoDB sur OSX pour le développement local

La semaine dernière, je construisais notre cluster MongoDB sur EC2 pour production. Pour le développement, cependant, nous aurons toujours besoin d’installer MongoDB localement. J'utilise OSX 10.6.8, mais ceux-ci sont installés les instructions doivent être les mêmes sur toutes les versions OSX modernes.

L’installation sur OSX est beaucoup plus agréable que sur EC2 (en fait, c’est tout aussi facile sur EC2, mais comme il s’agit d’une configuration plus simple, il ya une configuration réelle ou Head scratching). 

Téléchargez le dernier binaire: 

curl -O http://fastdl.mongodb.org/osx/mongodb-osx-x86_64-2.0.2.tgz 

Note !: Si wget n’a pas été installé, il suffit de télécharger le fichier ci-dessus par visitez le lien dans votre navigateur Web et déplacez-le dans votre maison annuaire. 

Nous allons tout installer sous /usr/local/mongodb garder les choses organisées. 

Créez les répertoires (changez 'youruser' avec votre nom d'utilisateur personnel): 

Sudo mkdir /usr/local/mongodb

Sudo mkdir /usr/local/mongodb/log

Sudo mkdir/usr/local/mongodb/data 

Sudo chown youruser /usr/local/mongodb/log

Sudo chown youruser /usr/local/mongodb/data

Sudo chgrp staff /usr/local/mongodb/log

Sudo chgrp staff /usr/local/mongodb/data 

Désarchivez les fichiers binaires et déplacez-les dans le bon dossier: 

tar -xvzf ~/mongodb-osx-x86_64-2.0.2.tgz 

Sudo mv ~/mongodb-osx-x86_64-2.0.2/* /usr/local/mongodb/ 

Créez un fichier de configuration pour Mongod: 

Sudo vi /usr/local/mongodb/mongod.conf

Coller: 

dbpath=/usr/local/mongodb/data

logpath=/usr/local/mongodb/log/mongod.log 

logappend=false

bind_ip=127.0.0.1

Remarque: dbpath et logpath spécifient le chemin d'accès à leur fichier logappend est défini pour écraser le fichier journal de chaque fichier Au début du serveur de base de données, bind_ip n'autorise que les connexions locales.

Créez un alias pour que mongod émetteur lise toujours le fichier de configuration: 

vi ~/.profile 

Coller:

# MongoDB Alias' 

alias mongod="/usr/local/mongodb/bin/mongod --config=/usr/local/mongodb/mongod.conf"

Tout fait, vous devriez être capable de taper simplement mongod après avoir rechargé le shell pour démarrer MongoDB. JE préféré ne pas commencer Mongod au démarrage, mais il y en a d'autres qui préfèrent et il y a beaucoup de documentation en ligne pour vous montrer comment régler cela avec launchd et créer une .plist.

http://alexanderwong.me/post/15259867190/installing-mongodb-on-osx-for-local-development

2
Livi17

Au lieu d’utiliser homebrew, vous pouvez utiliser docker pour installer autant de versions de mongodb que vous le souhaitez. Chaque mongodb peut alors s'exécuter sur des ports distincts.

Installez docker avec brew cask install docker et ouvrez Docker.app. Une fois que docker est en cours d’exécution, accédez à Terminal et installez votre version de mongodb en sélectionnant une image dans https://hub.docker.com/_/mongo/ like so: docker run -d -p 28017:27017 --name mongo4 mongo:latest

Vérifiez qu'il fonctionne avec docker ps et que vous pouvez vous connecter à mongodb à partir de votre application via le port 28017. Répétez les étapes avec un nom et un port différents pour installer plusieurs versions. Prendre plaisir!

1
Vidar
curl -O https://fastdl.mongodb.org/osx/mongodb-osx-x86_64-3.2.12.tgz
tar -zxvf mongodb-osx-x86_64-3.2.12.tgz
mkdir -p mongodb
cp -R -n mongodb-osx-x86_64-3.2.12/ mongodb
export PATH=<mongodb-install-directory>/bin:$PATH #path to the dir created in step 3
mkdir -p /data/db
Sudo chown -R $(whoami) /data/
mongod
0
CodeShadow

Ajout à l'excellente réponse de joeytwiddle:

si vous ne voulez pas lier puis dissocier l'ancienne version du logiciel, vous pouvez simplement l'exécuter à partir de la "cave" (/usr/local/Cellar/), où brew l'a installé. Utilisez ls /usr/local/Cellar/ pour trouver le chemin exact de l’exécutable. Par exemple, dans mon cas, pour exécuter mongo Shell: 

/usr/local/Cellar/[email protected]/3.6.7/bin/mongo
0
xiaoju