web-dev-qa-db-fra.com

MongoError: échec de la connexion au serveur [localhost: 27017] lors de la première connexion

J'ai payé un abonnement et téléchargé ce projet . Après npm install et node app.js, il renvoie l'erreur suivante:

Quelqu'un sait-il ce qui ne va pas?

/Users/Thomas/Desktop/mean-stack-tutorial-01$ node app.js 

/Users/Thomas/Desktop/mean-stack-tutorial-01/node_modules/mongodb/lib/server.js:265
        process.nextTick(function() { throw err; })
                                      ^
MongoError: failed to connect to server [localhost:27017] on first connect
    at Pool.<anonymous> (/Users/Thomas/Desktop/mean-stack-tutorial-01/node_modules/mongodb-core/lib/topologies/server.js:325:35)
    at emitOne (events.js:96:13)
    at Pool.emit (events.js:188:7)
    at Connection.<anonymous> (/Users/Thomas/Desktop/mean-stack-tutorial-01/node_modules/mongodb-core/lib/connection/pool.js:270:12)
    at Connection.g (events.js:292:16)
    at emitTwo (events.js:106:13)
    at Connection.emit (events.js:191:7)
    at Socket.<anonymous> (/Users/Thomas/Desktop/mean-stack-tutorial-01/node_modules/mongodb-core/lib/connection/connection.js:173:49)
    at Socket.g (events.js:292:16)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:188:7)
    at emitErrorNT (net.js:1281:8)
    at _combinedTickCallback (internal/process/next_tick.js:74:11)
    at process._tickCallback (internal/process/next_tick.js:98:9)

Edit 1: Suite aux commentaires, je viens d'installer mongo via brew, et j'ai fait brew services start mongodb puis mongo:

/Users/Thomas$ mongo
MongoDB Shell version v3.4.1
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.1
Server has startup warnings: 
2017-01-12T19:53:01.868+0800 I CONTROL  [initandlisten] 
2017-01-12T19:53:01.869+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-01-12T19:53:01.869+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2017-01-12T19:53:01.869+0800 I CONTROL  [initandlisten] 

Puis j'ai fait

/Users/Thomas$ mongod -httpinterface --dbpath /Users/Thomas/Desktop/MongoDB/db
2017-01-12T20:14:05.620+0800 I CONTROL  [initandlisten] MongoDB starting : pid=47356 port=27017 dbpath=/Users/Thomas/Desktop/MongoDB/db 64-bit Host=Pro.local
2017-01-12T20:14:05.621+0800 I CONTROL  [initandlisten] db version v3.4.1
2017-01-12T20:14:05.621+0800 I CONTROL  [initandlisten] git version: 5e103c4f5583e2566a45d740225dc250baacfbd7
2017-01-12T20:14:05.621+0800 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.2j  26 Sep 2016
2017-01-12T20:14:05.621+0800 I CONTROL  [initandlisten] allocator: system
2017-01-12T20:14:05.621+0800 I CONTROL  [initandlisten] modules: none
2017-01-12T20:14:05.621+0800 I CONTROL  [initandlisten] build environment:
2017-01-12T20:14:05.621+0800 I CONTROL  [initandlisten]     distarch: x86_64
2017-01-12T20:14:05.621+0800 I CONTROL  [initandlisten]     target_Arch: x86_64
2017-01-12T20:14:05.621+0800 I CONTROL  [initandlisten] options: { storage: { dbPath: "/Users/Thomas/Desktop/MongoDB/db" } }
2017-01-12T20:14:05.657+0800 I STORAGE  [initandlisten] wiredtiger_open config: create,cache_size=3584M,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2017-01-12T20:14:14.108+0800 I CONTROL  [initandlisten] 
2017-01-12T20:14:14.108+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-01-12T20:14:14.108+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2017-01-12T20:14:14.108+0800 I CONTROL  [initandlisten] 
2017-01-12T20:14:14.108+0800 I CONTROL  [initandlisten] 
2017-01-12T20:14:14.109+0800 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
2017-01-12T20:14:15.390+0800 I FTDC     [initandlisten] Initializing full-time diagnostic data capture with directory '/Users/Thomas/Desktop/MongoDB/db/diagnostic.data'
2017-01-12T20:14:16.303+0800 I INDEX    [initandlisten] build index on: admin.system.version properties: { v: 2, key: { version: 1 }, name: "incompatible_with_version_32", ns: "admin.system.version" }
2017-01-12T20:14:16.304+0800 I INDEX    [initandlisten]      building index using bulk method; build may temporarily use up to 500 megabytes of RAM
2017-01-12T20:14:16.406+0800 I INDEX    [initandlisten] build index done.  scanned 0 total records. 0 secs
2017-01-12T20:14:16.407+0800 I COMMAND  [initandlisten] setting featureCompatibilityVersion to 3.4
2017-01-12T20:14:16.407+0800 I NETWORK  [thread1] waiting for connections on port 27017

Puis dans un autre terminal, j'ai fait node app.js, qui se bloque (et n'imprime rien). Ensuite je fais http://localhost:28017 dans un navigateur, cela semble fonctionner:

enter image description here

Cependant, comment pourrais-je voir le site?

Éditer 2:

Le processus normal est

  1. installer mongo

  2. brew services start mongodb dans un terminal

  3. mongo & _ (supposons que nous utilisions le dossier par défaut /data/db/)

  4. npm start

  5. voir par exemple, bin/www pour le numéro de port, utilisez ensuite localhost:the_port_number dans un navigateur

19
user6330767

Vous n'avez pas encore démarré votre base de données monogo. première installation de mongo installez mongo selon votre système d'exploitation https://docs.mongodb.com/v3.0/tutorial/

puis suivez les instructions mentionnées sur ce site: https://docs.mongodb.com/v3.0/tutorial/getting-started-with-the-mongo-Shell/

  1. cd.
  2. mongod --dbpath "n'importe quel chemin de répertoire pour démarrer votre base de données"

puis démarrez votre serveur de noeud. Cela fonctionnera bien.

J'espère que cela t'aides!!

23
Developer

Tout d’abord, ouvrez un autre terminal avec la commande mongod pour démarrer votre mongoDB

Ensuite, démarrez à nouveau votre serveur de nœuds npm start ou si vous avez "nodemon", alors utilisez nodemon

Je pense que tout va bien se passer

Mongoose connected to mongodb://localhost/your_database
2
Shiv Prakash

J'ai eu le même problème, mais cela a bien fonctionné après le redémarrage du service.

service mongod start

0
user7982813