不能创建超过max_prepared_stmt_count条语句(当前值:16382)

时间:2019-11-09 19:59:44

标签: javascript mysql

在我的JavaScript应用中,我有一个类似的代码,该代码从websocket读取一些数据,然后使用mysql2模块将其插入MySQL数据库:

        const mysql = require('mysql2/promise');

        const db = await mysql.createConnection(params);

        const ws = new WebSocket(someUrl);

        ws.on('message', (data) =>
        {
            const t = JSON.parse(data);
            //insert some row to MySQL table
            db.execute("INSERT INTO table1 …);
        });

此代码中会定期发生以下MySQL错误:

Can't create more than max_prepared_stmt_count statements (current value: 16382)

我的第一个理解是,一次只执行一个语句,因为JavaScript中只有一个线程,而且我只使用一个数据库连接,但是看起来机制有点复杂。

实际上发生了什么?多条语句来自哪里?

EDIT1:

可能是mysql2 caches the statements

0 个答案:

没有答案