mysql maxpreparedstmtcount_NodeJs Mysql Cant't create more than max_prepared_stmt_count statements
这阵子碰到一个数据库上的问题,一个刚上线不到一周的 NodeJs 接口服务里所有的查询全部都挂掉了,接口一直处于 pending 状态,看了下 pm2 的日志发现了报错:Cant't create more than max_prepared_stmt_count statements,重启 Node 服务后接口查询恢复正常。
网上查了查资料基本上都是让修改 max_prepared_stmt_count 的,当时觉得这个方案治标不治本就没有采纳,后来优化了一下MySQL的部分代码就让服务继续跑着,后来又一周左右的时间服务又挂掉了。
CTO 也没碰到过这个问题然后几经搜索,最后发现了一个非常靠谱的解决方案。
语句问题,举例:
query(`SELECT nickname FROM users WHERE id = ${id} AND age = ?`, [age])
是因为语句中引入了变量导致的,我一般只有把需要转义的部分用问号填充,不需要转移的都是放到变量里的。
统一改成下面这种方式以后
query(`SELECT nickname FROM users WHERE id = ? AND age = ?`, [id, age])
截至目前为止服务跑的稳定很多,已经跑了半个月左右了。
mysql maxpreparedstmtcount_NodeJs Mysql Cant't create more than max_prepared_stmt_count statements相关推荐
- MySQL 报 Can't create more than max_prepared_stmt_count statements
前言 最近压测完毕以后, MySQL 报 Can't create more than max_prepared_stmt_count statements. 正常情况下是程序没有关闭 stmt 导致 ...
- jmeter连接MySQL出错_MySQL数据库之jmeter连接mysql数据库报错Cannot create PoolableConnectionFactory...
本文主要向大家介绍了MySQL数据库之jmeter连接mysql数据库报错Cannot create PoolableConnectionFactory ,通过具体的内容向大家展现,希望对大家学习M ...
- mysql ERROR 1396 (HY000): Operation CREATE USER failed 解决办法
mysql ERROR 1396 (HY000): Operation CREATE USER failed 解决办法 mysql 创建用户的时候: create user 'hive' identi ...
- 【数据分析师自学系列-MySQL】创建新表create table、create table as、create table like的区别
[数据分析师自学系列-MySQL]创建新表create table.create table as.create table like的区别 1.create table:基本创建新表方式 格式如下: ...
- 【Mysql】EVENT 使用基础 - Create Event
目录 [Mysql]EVENT 使用基础 - Create Event [Mysql]EVENT 使用基础 - Alter Event [Mysql]EVENT 使用基础 - Drop Event [ ...
- mysql的sql_quote_show_create与SHOW CREATE TABLE命令介绍
来源:http://blog.sina.com.cn/s/blog_86d9fde701014dm1.html 技术背景: 刚开始学习MySQL时候,有时偷懒,会用SHOW CREATE TABLE ...
- mysql select table_MySQL中的CREATE TABLE……SELECT语句
在MySQL中,可使用CREATE TALBE. . .SELECT语句将查询结果转存到一个新表中. 创建新表 create table tabname(col1 type1 [not null] [ ...
- MySQL Cluster(MySQL 集群) 初试(转)
作/译者:叶金荣(imysql#imysql.com>),来源:http://imysql.com,欢迎转载. 作/译者:叶金荣(Email: ),来源:http://imysql.cn,转载请 ...
- 设置更改root密码(远程,本地)、连接mysql、mysql常用命令
设置更改root密码 1.将mysql加入环境变量中 [root@centos7 ~]# grep mysql /etc/profile export PATH=/usr/local/mysql/bi ...
最新文章
- R语言ggplot2可视化增加坐标轴的刻度数实战:自定义坐标轴刻度粒度、增加坐标轴刻度的粒度、更加精细地表达
- javascript入门·简单运算和数据类型转换
- 个人的关于c++运算符重载的总结
- luogu 3796 【模板】AC自动机(加强版)
- POJ1364基本的查分约束问题
- Freemaker FTL指令常用标签及语法
- Jmeter远程测试
- 【操作系统】信号量的用法
- PHP删除排序数组中的重复项,每日一道算法:删除排序数组中的重复项
- html strong标签 无法渲染,javascript – 当我动态设置内容时,TinyMCE无法使用chrome
- Unity资源打包之Assetbundle
- 我的开源项目:TS封装格式分析器
- C Hello World程序
- 项目开发版本控制----Git
- html大小和浏览器可视区域一样吗,浏览器窗口可视区域大小和网页尺寸和网页卷去的距离与偏移量...
- jq 如何获取和当然元素相同类名的标签_JS/JQ基于localStorage的本地数据储存指南...
- 简单的选课系统(6)——选课界面和管理员界面
- maya检查模型重合点脚本
- linux运行docker容器,添加映射端口
- linux eclipse插件安装,Linux 下 EclipseME 插件的安装步骤