How to get mongodb version from mongoose

前端 未结 3 1214
佛祖请我去吃肉
佛祖请我去吃肉 2021-01-02 16:01

Simple, with the mongo cli:

db.version ()

How can I do the same with mongoose? How can I send a custom command?

相关标签:
3条回答
  • 2021-01-02 16:34

    Try this one, it will give you the verion of both MongoDB and Mongoose

    async function run() {
        var admin = new mongoose.mongo.Admin(mongoose.connection.db);
        admin.buildInfo(function (err, info) {
           console.log(`mongodb: ${info.version}`);
           console.log(`mongoose: ${mongoose.version}`);
        });
    }
    
    mongoose.connect(process.env.MONGO_URI, {
            useNewUrlParser: true,
            useUnifiedTopology: true
        })
        .then(() => {
            console.log('MongoDB connected');
            run();
        })
        .catch(error => {
            console.log(error);
        });
    
    0 讨论(0)
  • 2021-01-02 16:45

    You can use the native mongo driver's Admin#buildInfo method for that via your Mongoose connection:

    var mongoose = require('mongoose');
    
    mongoose.connect('mongodb://localhost/test', function(err){
      var admin = new mongoose.mongo.Admin(mongoose.connection.db);
      admin.buildInfo(function (err, info) {
         console.log(info.version);
      });
    });
    
    0 讨论(0)
  • 2021-01-02 16:54

    You can query the buildInfo directly from your Mongoose connection.

    var mongoose = require('mongoose');
    
    mongoose.connect('mongodb://localhost/test', function(err) {
        mongoose.db.command({ buildInfo: 1 }, function (err, info) {
            console.log(info.version);
        });
    });
    

    https://docs.mongodb.com/manual/reference/command/buildInfo/#dbcmd.buildInfo

    0 讨论(0)
提交回复
热议问题