MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Mongodb v4.0 Transaction, MongoError :les numéros de transaction ne sont autorisés que sur un membre du jeu de réplicas ou des mongos

Transactions sont sans aucun doute la nouvelle fonctionnalité la plus excitante de MongoDB 4.0 . Mais malheureusement, la plupart des outils d'installation et d'exécution de MongoDB démarrent un serveur autonome par opposition à un jeu de répliques. Si vous essayez de démarrer une session sur un serveur autonome, vous obtiendrez cette erreur.

Pour utiliser les transactions, vous avez besoin d'un MongoDB jeu de répliques, et le démarrage d'un jeu de répliques localement pour le développement est un processus complexe. Le nouveau module run-rs npm module facilite le démarrage des jeux de répliques. Exécuter run-rs est tout ce dont vous avez besoin pour démarrer un jeu de répliques, run-rs installera même la bonne version de MongoDB pour vous.

Run-rs n'a pas de dépendances extérieures à l'exception de Node.js et npm. Vous n'avez pas besoin d'avoir Docker, homebrew, APT, Python ou même MongoDB installé.

Installez run-rs globalement avec npm's -g drapeau. Vous pouvez également lister run-rs dans votre package.json devDependencies du fichier.

npm install run-rs -g

Ensuite, exécutez run-rs avec l'indicateur --version. Run-rs téléchargera MongoDB v4.0.0 pour vous. Ne vous inquiétez pas, cela n'écrasera pas votre installation MongoDB existante.

run-rs -v 4.0.0 --shell

Utilisez ensuite replicaSet=rs dans votre chaîne de connexion.

Vous trouverez plus de détails à ce sujet ici.