Mysql
 sql >> Base de données >  >> RDS >> Mysql

ER_CON_COUNT_ERROR :trop d'erreurs de connexions dans node-mysql

MySQL par défaut n'accepte que 100 connexions simultanées maximum. Dans votre cas, vous créez ~ 1500, donc l'erreur que vous obtenez est normale. Vous pouvez augmenter cette valeur mais le problème ici est dans votre code.

Vous devriez utiliser une piscine à la place. Cela permettra au nœud de créer un pool de connexions (je pense que la valeur par défaut est 10) et de les partager avec vos requêtes :

    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();
          });
        });
    }

Vous pouvez également envisager d'utiliser une seule connexion et de tout insérer en même temps. Vous pouvez voir dans ceci répondez comment y parvenir.