sql >> Database teknologi >  >> RDS >> Mysql

ER_CON_COUNT_ERROR:For mange forbindelser fejl i node-mysql

MySQL accepterer som standard kun 100 samtidige forbindelser max. I dit tilfælde opretter du ~1500, så fejlen du får er normal. Du kan øge denne værdi, men problemet her er i din kode.

Du bør bruge en pool i stedet for. Dette vil få noden til at oprette en pulje af forbindelser (jeg tror, ​​standarden er 10) og lade dem blive delt af dine forespørgsler:

    var mysql = require('mysql');
    var pool  = mysql.createPool({
        host     : 'xxx.xxx.xxx.xxx',
        database : 'mydb',
        user     : 'test',
        password : 'test'
    });
    for (var i=0; i<size;i++) {
        pool.getConnection(function(err, connection) {
          connection.query( 'INSERT INTO ...', function(err, rows) {
            connection.release();
          });
        });
    }

Du kan også overveje at bruge en enkelt forbindelse og indsætte alt på én gang. Du kan se i dette svar på, hvordan man opnår det.



  1. Ecto oprettelse af unikt indeks mislykkedes for Mysql/Mariadb

  2. Hvordan finder jeg dublerede værdier i en tabel i Oracle?

  3. SQLAlchemy func.count på boolesk kolonne

  4. Sådan opretter du tabel med begrænsning af fremmednøgle i SQL Server - SQL Server / TSQL vejledning del 66