首页 > 解决方案 > 如何使用集群 MongoDB Atlas 配置连接 Adonis.Js

问题描述

我正在从MongoDB.atlas在Adonis.js中设置我的连接,但我不知道如何完成此配置。

我目前只有连接字符串:

mongodb+srv://user:@cluster-6nrle.mongodb.net/test?retryWrites=true&w=majority

配置/数据库.js

/*
  |--------------------------------------------------------------------------
  | Default Connection
  |--------------------------------------------------------------------------
  |
  | Connection defines the default connection settings to be used while
  | interacting with Mongodb databases.
  |
  */
  connection: Env.get('DB_CONNECTION', 'mongodb'),
  /*-------------------------------------------------------------------------*/

  mongodb: {
    client: 'mongodb',
    connectionString: Env.get('DB_CONNECTION_STRING', 'mongodb+srv://user:<password>@cluster-6nrle.mongodb.net/test?retryWrites=true&w=majority'),
    connection: {
      host: Env.get('DB_HOST', 'localhost'),
      port: Env.get('DB_PORT', 27017),
      username: Env.get('DB_USER', 'admin'),
      password: Env.get('DB_PASSWORD', ''),
      database: Env.get('DB_DATABASE', 'adonis'),
      options: {
        // replicaSet: Env.get('DB_REPLICA_SET', '')
        // ssl: Env.get('DB_SSL, '')
        // connectTimeoutMS: Env.get('DB_CONNECT_TIMEOUT_MS', 15000),
        // socketTimeoutMS: Env.get('DB_SOCKET_TIMEOUT_MS', 180000),
        // w: Env.get('DB_W, 0),
        // readPreference: Env.get('DB_READ_PREFERENCE', 'secondary'),
        // authSource: Env.get('DB_AUTH_SOURCE', ''),
        // authMechanism: Env.get('DB_AUTH_MECHANISM', ''),
        // other options
      }
    }
  }, 

我想知道如何完成配置或其他替代方法,提前谢谢!!!

标签: node.jsmongodbadonis.js

解决方案


mongodb+srv://[username:password@]host1[:port1][,...hostN[:portN]][/[database][?options]] .env 文件中的mongodb 连接格式是这样 的

DB_USER=user 
DB_PASSWORD=password
DB_HOST=cluster-6nrle.mongodb.net
DB_PORT=27017
DB_DATABASE =test

更改数据库配置文件

mongodb: {
client: 'mongodb',
connection: {
  host: Env.get('DB_HOST', 'localhost'),
  port: Env.get('DB_PORT', 27017),
  username: Env.get('DB_USER', 'admin'),
  password: Env.get('DB_PASSWORD', ''),
  database: Env.get('DB_DATABASE', 'adonis'),
  options: {
  }

也许这是工作


推荐阅读