Node.js 在节点js中使用mysql2包获取数百万条记录

Node.js 在节点js中使用mysql2包获取数百万条记录,node.js,node-mysql2,Node.js,Node Mysql2,我的MySQL数据库在我的一个表中有200万条记录。我正在开发一个api,使用node.js从表中获取记录 我正在使用软件包连接到数据库。下面是我从表中获取所有记录的代码 var query1=dbCon.query('select*from Post'); 问题1 .on('error',函数(err){ //句柄错误,在此之后也将发出“结束”事件 console.log(错误) }) .on('fields',函数(fields){ //要跟随的行的字段数据包 console.log(字段)

我的MySQL数据库在我的一个表中有200万条记录。我正在开发一个api,使用node.js从表中获取记录

我正在使用软件包连接到数据库。下面是我从表中获取所有记录的代码

var query1=dbCon.query('select*from Post');
问题1
.on('error',函数(err){
//句柄错误,在此之后也将发出“结束”事件
console.log(错误)
})
.on('fields',函数(fields){
//要跟随的行的字段数据包
console.log(字段);
})
.on('result',函数(行){
//如果处理涉及I/O,暂停连接非常有用
dbCon.pause();
processRow(行,函数(){
console.log(“行是”,行);
dbCon.resume();
});
})
.on('end',函数(行){
控制台日志(行);
});
数据库连接代码

const mysql = require('mysql2');
const serverConfig = require('../global/serverConfig');
const conPool = mysql.createPool({
    host: serverConfig.dbHost,
    database: serverConfig.dbName,
    user: serverConfig.dbUser,
    password: serverConfig.dbPass,
    multipleStatements: true
    // timezone: 'IST'
})
conPool.on('connection', function (connection) {
   // console.log('Connected to MySql db');
});
conPool.on('error', ()=>{
   // console.log('Not Connected to MySql db');
})
module.exports = conPool.promise();
当我点击API时,我得到了一个错误

错误:TypeError:query1.on不是函数


请为我提供获取和处理如此庞大数据的解决方案或任何替代方法。

使用此链接,并按照答案@mohammadjavadahmadi中的步骤进行操作。感谢您的及时回复。这不起作用。请提供另一个解决方案。如何获取
dbCon
对象?它是来自
require('mysql2').createConnection()
还是
require('mysql2/promise').createConnection()
?@AndreySidorov我已经更新了我的问题。请看一看。提前感谢当前承诺连接(以及promisePool.query()结果)不支持行流。现在最好的选择是非承诺回调api。请参阅并使用此链接,然后按照答案@mohammadjavadahmadi中的步骤进行操作。感谢您的及时回复。这不起作用。请提供另一个解决方案。如何获取
dbCon
对象?它是来自
require('mysql2').createConnection()
还是
require('mysql2/promise').createConnection()
?@AndreySidorov我已经更新了我的问题。请看一看。提前感谢当前承诺连接(以及promisePool.query()结果)不支持行流。现在最好的选择是非承诺回调api。看到和