连接到多个mysql数据库时连接初始化顺序很重要的可能原因

cld4siwp  于 2021-06-21  发布在  Mysql
关注(0)|答案(0)|浏览(243)

我使用node.js和mysql2包连接到两个位于两个不同远程服务器中的数据库。我们叫他们a和b。
连接到多个mysql数据库时,连接顺序很重要的可能原因是什么?
当我先连接到a,然后连接到b时,连接a是成功的,但连接b不是,只是无限期地挂起,没有任何错误。
但是,当我先连接到b然后连接到a时,连接a和b都是成功的。
为什么会这样?
不幸的是,我不能提供任何错误日志,因为连接失败时会挂起。

索引.js

(async () => {
  await A.init();  //successfully connects
  await B.init(); //connection hangs with no error log

  app.listen(8080)
})();

(async () => {
  await B.init(); //successfully connects
  await A.init(); //successfully connects

  app.listen(8080)
})();

a和b模块

const mysql = require('mysql2');

const connection = mysql.createConnection({...})

module.exports.init = function() {
  return new Promise(function(res, req) {
    connection.connect(err => {
      if(err) return rej(err);

      res(null)
    }
  })
}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题