带有MySQL-PROTOCOL_PACKETS_OUT_ORDER的ExpressJS

hmtdttj4  于 2022-10-12  发布在  Mysql
关注(0)|答案(1)|浏览(590)

我有一台带有Node的ExpressJS服务器,使用MySQL npm package运行,一切工作正常。然而,当我让服务器运行很长一段时间(比方说,通宵)时,我总是在返回时发现它已经崩溃,状态为PROTOCOL_PACKETS_OUT_OF_ORDER。(见下文)

我怎么才能解决这个问题,即使我根本不能解决这个问题,因为这台服务器很快就会部署到生产中,如果它每晚都崩溃,这是不可能的。

  1. node:events:505
  2. throw er; // Unhandled 'error' event
  3. ^
  4. Error: Packets out of order. Got: 0 Expected: 17
k0pti3hp

k0pti3hp1#

我也有同样的问题,但当我从createConnection更改为createPool后,它不会崩溃。

  1. const mysql = require("mysql");
  2. const con = mysql.createPool({
  3. connectionLimit: 5,
  4. host: "localhost",
  5. user: // your user,
  6. password: // your password,
  7. database: // your database,
  8. debug: false
  9. });
  10. con.on("connection", connection => {
  11. console.log("Database connected!");
  12. connection.on("error", err => {
  13. console.error(new Date(), "MySQL error", err.code);
  14. });
  15. connection.on("close", err => {
  16. console.error(new Date(), "MySQL close", err);
  17. });
  18. });
  19. module.exports = con;
展开查看全部

相关问题