无法使用nodejs express将大型PDF文件上传到mysql

时间:2018-04-07 22:58:04

标签: mysql node.js express

我正在使用express-fileupload模块上传pdf文件并存储到mysql数据库中。我只能上传pdf文件< 10MB。我想允许上传更大的文件带宽,例如50mb。

这是我的路由器:

app.use(fileUpload({ limits: { fileSize: 50 * 1024 * 1024 } })); // needed for file upload
app.use(bodyParser.json({ limit: '50mb' }));
app.use(bodyParser.urlencoded({
    limit: '50mb',
    extended: true
}));

我可以看到我的文件在Chrome浏览器上传栏上100%上传,但是我的应用程序很快就崩溃了,并出现此错误:

  

events.js:183         扔掉//未处理的错误'事件

     

错误:无法以关闭状态写入

我已经尝试增加mysql的连接超时,即600000,但仍然面临同样的问题。

1 个答案:

答案 0 :(得分:0)

看起来我修好了。这是因为mysql连接的最大数据包传输默认为4MB。您可以将其更改为您自己的大小:

SET GLOBAL max_allowed_packet=1073741824;

或者在my.ini文件中进行更改:How to change max_allowed_packet size