如何使用 MongoDB Node.JS 驱动程序创建新数据库?

问题描述 投票:0回答:4

如何使用 MongoDB Node.JS 驱动程序以编程方式创建数据库?

这看起来很有希望,但我不确定如何使用管理员凭据连接并创建新数据库。

var db = new Db('test', new Server('locahost', 27017));
  // Establish connection to db
  db.open(function(err, db) {
    assert.equal(null, err);

    // Add a user to the database
    db.addUser('user3', 'name', function(err, result) {
      assert.equal(null, err);

      // Authenticate
      db.authenticate('user3', 'name', function(err, result) {
        assert.equal(true, result);

        // Logout the db
        db.logout(function(err, result) {
          assert.equal(true, result);

          // Remove the user
          db.removeUser('user3', function(err, result) {
            assert.equal(true, result);

            db.close();
          });
        });
      });
    });
  });
javascript node.js mongodb
4个回答
6
投票

在 mongodb 中,数据库和集合是在第一次访问时创建的。当新用户首次连接并接触他们的数据时,他们的数据库将被创建。


3
投票

这似乎有效。

var Db = require('mongodb').Db, 
Server = require('mongodb').Server;

var db = new Db('test', new Server('localhost', 27017));
db.open(function (err, db) {
  if (err) throw err;

  // Use the admin database for the operation
  var adminDb = db.admin();

  adminDb.authenticate('adminLogin', 'adminPwd', function (err, result) {
    db.addUser('userLogin', 'userPwd', function (err, result) {
      console.log(err, result);
    });
  });
});

2
投票

尝试如下:

var adminuser = "admin";
var adminpass = "admin";
var server = "localhost";
var port   = 27017; 
var dbName = "mydatabase";
var mongodb          = require('mongodb');
var mongoClient = mongodb.MongoClient;

var connString = "mongodb://"+adminuser+":"+adminpass+"@"+server+":"+port+"/"+dbName;
    mongoClient.connect(connString, function(err, db) {
        if(!err) {
            console.log("\nMongo DB connected\n");                
        }
        else{
            console.log("Mongo DB could not be connected");
            process.exit(0);
        }
    });

0
投票
const { MongoClient } = require("mongodb");

const uri =“mongodb://localhost:27017”;

const 客户端 = new MongoClient(uri);

异步函数initializeDatabase() { 尝试{

    await client.connect();
    console.log("Connected to the database");

   
    const database = client.db("mydatabase");

   
    module.exports = database;
} catch (error) {
    console.error("Error initializing database:", error);
}

}

初始化数据库();

© www.soinside.com 2019 - 2024. All rights reserved.