可能原因是 mongoose 版本和mongodb 数据库版本不匹配,https://mongoosejs.com/docs/compatibility.html

 

 

我再mongose 升级后报错 MongoTimeoutError: Server selection timed out after 30000 ms

查了好多资料都不行,后来索性新建了一个项目只有链接数据库,居然可以没有报错.

想想区别就是app.js 里面引用了别的东西,一行一行注销测试发现和 "excel-export""^0.5.1" 不兼容

所以报这个错可以研究下是不是和别的东西不兼容

贴下我mongoose@5.7.0的链接代码

import mongoo = require('mongoose');
import config = require('../config');

// 设置连接池数量,并且超过后自动销毁
// auth,user,password
const options = {
    poolSize: 100,
    auto_reconnect: true,
    autoReconnect:true,
    keepAlive: 10,
    useNewUrlParser: true,
    useUnifiedTopology:true,
    reconnectTries: Number.MAX_VALUE// 总是尝试重新连接
    reconnectInterval: 500// 每500ms重新连接一次
    bufferMaxEntries: 0,
    connectTimeoutMS: 99999 // 99s后放弃重新连接
};
mongoo.set('useCreateIndex'true)
// 连接数据库
mongoo.connect(config.connectionoptions, (err=> {
    if (err) {
        console.log('Connection Error:' + err);
    } else {
        console.log('Connection success!');
    }
});

const db = mongoo.connection;
 
db.on('error', (err=> {
    console.log('mongoose connection error:' + err);
    mongoo.disconnect();
});
 
db.once('open', (err=> {
    if (err) {
        console.log('Mongoose open Error:' + err);
    } else {
        console.log('Mongoose open success!');
    }
});

db.on('connecting'function() {
    console.log('connecting to MongoDB...');
});

db.on('connected'function() {
    console.log('MongoDB connected!');
});

db.on('reconnected'function () {
    console.log('MongoDB reconnected!');
});

db.on('disconnected'function() {
    console.log('MongoDB disconnected!');
    // 连接数据库
    mongoo.connect(config.connectionoptions, (err=> {
        if (err) {
            console.log('Connection Error:' + err);
        } else {
            console.log('Connection success!');
        }
    });
});

module.exports = mongoo;






 

posted @ 2021-07-27 23:01 Aroundight 阅读(625) 评论(0) 推荐(0)
摘要: $('#text').inputmask('decimal');默认是右对齐的添加rightAlign后无效,改成rightAlignNumerics $('#text').inputmask('decimal', {rightAlignNumerics: false}); 阅读全文
posted @ 2018-09-14 11:00 Aroundight 阅读(308) 评论(0) 推荐(0)
摘要: /// /// 使用虚拟表进行分页查询,不适用明确知道列名的查询/// /// sql 如"select * from name where 1=1"/// 页码 如"1"/// 条数 如"100"/// DataTablepublic static DataTable SelectPaging(S... 阅读全文
posted @ 2015-10-13 10:02 Aroundight 阅读(248) 评论(0) 推荐(0)
摘要: 一定还有很多的问题,比如设置列宽时很麻烦,也没有什么很高深的东西。写是为了自己先记下来防止以后忘了。首先肯定要下载PHPEXCEL后放到项目里。以下是控制器中的代码require APP_PATH . 'Common/PHPExcel/PHPExcel.php';// 引入PHPExcel,自己修改... 阅读全文
posted @ 2014-05-09 11:08 Aroundight 阅读(423) 评论(0) 推荐(0)
摘要: 下载PHPEXCEL后放到项目里。 public function InExcel() { //设定缓存模式为经gzip压缩后存入cache(PHPExcel导入导出及大量数据导入缓存方式的修改 ) $cacheMethod = PHPExcel_CachedObjec... 阅读全文
posted @ 2014-05-09 11:02 Aroundight 阅读(271) 评论(0) 推荐(0)
摘要: JS部分的代码 html部分代码 阅读全文
posted @ 2014-05-09 09:35 Aroundight 阅读(4647) 评论(1) 推荐(1)
摘要: using System;using System.IO;using System.Messaging;namespace YURE.PAIWEI.BALIANGUI{ /// /// MQ文件发送 /// 所有异常都将抛出请做好异常处理 /// public st... 阅读全文
posted @ 2014-05-09 09:22 Aroundight 阅读(805) 评论(0) 推荐(0)
点击右上角即可分享
微信分享提示