web-dev-qa-db-ja.com

MongoError:最初の接続でサーバー[localhost:27017]への接続に失敗しました

メンバーシップを支払い、 このプロジェクト をダウンロードしました。 npm installおよびnode app.jsの後に、次のエラーが返されます。

誰が間違っているか知っていますか?

/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)

編集1:コメントに従って、brewを介してmongoをインストールし、brew services start mongodbを実行してから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] 

それから私はやった

/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

その後、別のターミナルでnode app.jsを実行しましたが、ハングします(そして何も印刷されません)。次に、ブラウザでhttp://localhost:28017を実行すると、動作するようです:

enter image description here

しかし、どのようにしてウェブサイトを見ることができますか?

編集2:

通常のプロセスは

  1. mongoをインストールする

  2. brew services start mongodbターミナルで

  3. mongo &(デフォルトのフォルダー/data/db/を使用すると仮定します)

  4. npm start

  5. たとえば、ポート番号についてはbin/wwwを参照し、ブラウザでlocalhost:the_port_numberを使用します

19
user6330767

Monogoデータベースを開始していません。最初にmongoをインストールします OS https://docs.mongodb.com/v3.0/tutorial/に従ってmongoをインストールします

次に、このサイトに記載されている指示に従います。 https://docs.mongodb.com/v3.0/tutorial/getting-started-with-the-mongo-Shell/

  1. cd.
  2. mongod --dbpath "データベースを起動する任意のディレクトリパス"

次に、ノードサーバーを起動します。それは正常に動作します。

お役に立てれば!!

23
Developer

最初に別のターミナルを開いてmongodコマンドを実行し、mongoDBを起動します

次に、ノードサーバーnpm startを再起動するか、「nodemon」がある場合はnodemonを使用します

今はすべてがうまくいくと思う

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

私は同じ問題を抱えていましたが、サービスを再起動した後はうまく機能しました

service mongod start

0
user7982813