将mongodb连接到nodeapp时出错,但在索引页面上工作正常

问题描述

我正在尝试从Github运行该项目:

https://github.com/braitsch/node-login

运行mongod时,得到以下输出

{"t":{"$date":"2020-09-12T10:16:10.360-04:00"},"s":"I","c":"CONTROL","id":23285,"ctx":"main","msg":"Automatically disabling TLS 1.0,to force-enable TLS 1.0 specify --ssldisabledProtocols 'none'"}
{"t":{"$date":"2020-09-12T10:16:10.845-04:00"},"s":"W","c":"ASIO","id":22601,"msg":"No TransportLayer configured during NetworkInterface startup"}
{"t":{"$date":"2020-09-12T10:16:10.845-04:00"},"c":"NETWORK","id":4648602,"msg":"Implicit TCP FastOpen in use."}
{"t":{"$date":"2020-09-12T10:16:10.846-04:00"},"c":"STORAGE","id":4615611,"ctx":"initandlisten","msg":"MongoDB starting","attr":{"pid":13376,"port":27017,"dbPath":"C:/data/db/","architecture":"64-bit","host":"LAPTOP-5I1B63U8"}}
{"t":{"$date":"2020-09-12T10:16:10.846-04:00"},"id":23398,"msg":"Target operating system minimum version","attr":{"targetMinOS":"Windows 7/Windows Server 2008 R2"}}
{"t":{"$date":"2020-09-12T10:16:10.846-04:00"},"id":23403,"msg":"Build Info","attr":{"buildInfo":{"version":"4.4.1","gitVersion":"ad91a93a5a31e175f5cbf8c69561e788bbc55ce1","modules":[],"allocator":"tcmalloc","environment":{"distmod":"windows","distarch":"x86_64","target_arch":"x86_64"}}}}
{"t":{"$date":"2020-09-12T10:16:10.847-04:00"},"id":51765,"msg":"Operating System","attr":{"os":{"name":"Microsoft Windows 10","version":"10.0 (build 18362)"}}}
{"t":{"$date":"2020-09-12T10:16:10.847-04:00"},"id":21951,"msg":"Options set by command line","attr":{"options":{}}}
{"t":{"$date":"2020-09-12T10:16:10.848-04:00"},"s":"E","id":20557,"msg":"DBException in initAndListen,terminating","attr":{"error":"NonExistentPath: Data directory C:\\data\\db\\ not found. Create the missing directory or specify another path using (1) the --dbpath command line option,or (2) by adding the 'storage.dbPath' option in the configuration file."}}
{"t":{"$date":"2020-09-12T10:16:10.848-04:00"},"c":"REPL","id":4784900,"msg":"Stepping down the ReplicationCoordinator for shutdown","attr":{"waitTimeMillis":10000}}
{"t":{"$date":"2020-09-12T10:16:10.849-04:00"},"c":"COMMAND","id":4784901,"msg":"Shutting down the MirrorMaestro"}
{"t":{"$date":"2020-09-12T10:16:10.849-04:00"},"c":"SHARDING","id":4784902,"msg":"Shutting down the WaitForMajorityService"}
{"t":{"$date":"2020-09-12T10:16:10.850-04:00"},"id":20562,"msg":"Shutdown: going to close listening sockets"}
{"t":{"$date":"2020-09-12T10:16:10.850-04:00"},"id":4784905,"msg":"Shutting down the global connection pool"}
{"t":{"$date":"2020-09-12T10:16:10.851-04:00"},"id":4784906,"msg":"Shutting down the FlowControlTicketholder"}
{"t":{"$date":"2020-09-12T10:16:10.851-04:00"},"c":"-","id":20520,"msg":"Stopping further Flow Control ticket acquisitions."}
{"t":{"$date":"2020-09-12T10:16:10.852-04:00"},"id":4784918,"msg":"Shutting down the replicasetMonitor"}
{"t":{"$date":"2020-09-12T10:16:10.852-04:00"},"id":4784921,"msg":"Shutting down the MigrationUtilExecutor"}
{"t":{"$date":"2020-09-12T10:16:10.853-04:00"},"id":4784925,"msg":"Shutting down free monitoring"}
{"t":{"$date":"2020-09-12T10:16:10.853-04:00"},"c":"FTDC","id":4784926,"msg":"Shutting down full-time data capture"}
{"t":{"$date":"2020-09-12T10:16:10.854-04:00"},"id":4784927,"msg":"Shutting down the HealthLog"}
{"t":{"$date":"2020-09-12T10:16:10.854-04:00"},"id":4784929,"msg":"Acquiring the global lock for shutdown"}
{"t":{"$date":"2020-09-12T10:16:10.861-04:00"},"id":4784931,"msg":"Dropping the scope cache for shutdown"}
{"t":{"$date":"2020-09-12T10:16:10.861-04:00"},"id":20565,"msg":"Now exiting"}
{"t":{"$date":"2020-09-12T10:16:10.862-04:00"},"id":23138,"msg":"Shutting down","attr":{"exitCode":100}}

当我运行node app时,它适用于索引页面,但是当我单击“注册”时,将抛出此错误,并且该页面不起作用。该应用程序随后崩溃。似乎未连接nodeapp。我期望的结果是仅能够运行该项目并注册。我对mongo和node非常陌生,所以还需要做其他事情。我只是遵循github页面上的readme.md。

谢谢

node app
Express server listening on port 3000
C:\Users\dunka\Documents\GitHub\node-login\node_modules\mongodb\lib\utils.js:725
          throw error;
          ^

MongoServerSelectionError: connect ECONNREFUSED 127.0.0.1:27017
    at Timeout._onTimeout (C:\Users\dunka\Documents\GitHub\node-login\node_modules\mongodb\lib\core\sdam\topology.js:430:30)
    at listOnTimeout (internal/timers.js:549:17)
    at processtimers (internal/timers.js:492:7) {
  reason: TopologyDescription {
    type: 'Single',setName: null,maxSetVersion: null,maxElectionId: null,servers: Map {
      'localhost:27017' => ServerDescription {
        address: 'localhost:27017',error: Error: connect ECONNREFUSED 127.0.0.1:27017
            at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1141:16) {
          name: 'MongoNetworkError'
        },roundtripTime: -1,lastUpdateTime: 2764466,lastWriteDate: null,opTime: null,type: 'UnkNown',minWireversion: 0,maxWireversion: 0,hosts: [],passives: [],arbiters: [],tags: []
      }
    },stale: false,compatible: true,compatibilityError: null,logicalSessionTimeoutMinutes: null,heartbeatFrequencyMS: 10000,localThresholdMS: 15,commonWireversion: null
  }
}

解决方法

mongod服务无法启动

“错误”:“ NonExistentPath:找不到数据目录C:\ data \ db \。创建丢失的目录或使用(1)--dbpath命令行选项或(2)添加'配置文件中的storage.dbPath'选项。”

您需要创建目录C:\data\db,或将mongod服务器配置为使用其他目录。