mysql实例的连接数max_user_connections 和max_connections 配置的那些事
今天在查线上问题时,通过phpMyAdmin来进行DML操作,发现比平时慢多了,就各种进原因。
项目的场景是一个mysql实例中创建了多个数据库,猜想可能是相互影响所致。
然后,查询线上Mysql数据库的连接数配置,发现明显不太合理。
如下:

大家知道 ,在服务器安装完Mysql实例后,会在my.ini或my.cnf文件中配置一些关键参数,比如:
  | max_connections                               | 10000    -- 代表允许连接数据库的所有用户的连接数总和
  | max_user_connections                      | 3000      -- 代表允许单个用户的连接数最大值,即并发值
关于max_connections:
# mysql服务器支持的最大并发连接数(用户数)。但总会预留其中的一个连接给管理员使用超级权限登录,即使连接数目达到最大限制。如果设置得过小而用户比较多,会经常出现“Too many connections”错误。
关于max_user_connections:
#配置过低,会出现has already more than 'max_user_connections' active connections等错误
另外,在mysql-5.7版本开始,创建用户的时候,还可以在这里指定连接数,每小时的最大连接,及用户并发连接【这时候指定的连接数,受限于my.ini中配置的连接数,因为my.ini配置的连接数是不区分用户的】,如下:
  
最后,回到文章开始,由于max_user_connections设置过大,会出现一个客户端占用大部分连接数的问题,致使另外的客户端出现等待或连接超时的问题。
解决办法:
1、针对全局配置,修改 MySQL 安装目录下 my.ini 或者 my.cnf 文件内的 max_user_connections 参数的数值,重启 MySQL 服务器。
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
max_connections = 10000
max_user_connections=2000
2、通过其它方式处理一下,针对指定用户设置的,比如:
GRANT USAGE ON *.* TO test_user@localhost MAX_USER_CONNECTIONS 2000;方式2
UPDATE mysql.user SET max_user_connections = 2000 WHERE user='test_user' AND host='localhost'; FLUSH PRIVILEGES;mysql实例的连接数max_user_connections 和max_connections 配置的那些事的更多相关文章
- MySQL中的max_connections和max_user_connections 及 MySQL服务器最大连接数的合理设置
		
max_connections 是指整个mysql服务器的最大连接数: max_user_connections 是指每个数据库用户的最大连接数,比如:虚拟主机可以用这个参数控制每个虚拟主机用户的数据 ...
 - MySQL性能优化之max_connections配置参数浅析
		
这篇文章主要介绍了MySQL性能优化之max_connections配置参数浅析,本文着重讲解了3种配置max_connections参数的方法,需要的朋友可以参考下 MySQL的max_connec ...
 - MySQL参数最大连接数max_connections
		
1.查看最大连接数 mysql> show status like 'Threads%'; +-------------------+-------+ | Variable_name | Val ...
 - 同一台windows下配置安装多个mysql实例,实现主从同步
		
一.安装多个mysql 参见: https://blog.csdn.net/wrh_csdn/article/details/80198795 https://www.cnblogs.com/qjoa ...
 - MySQL性能优化之max_connections配置
		
MySQL的最大连接数,增加该值增加mysqld 要求的文件描述符的数量.如果服务器的并发连接请求量比较大,建议调高此值,以增加并行连接数量,当然这建立在机器能支撑的情况下,因为如果连接数越多,介于M ...
 - 一个Web报表项目的性能分析和优化实践(六):设置MySQL的最大连接数(max_connections)
		
在上一篇文章中"一个Web报表项目的性能分析和优化实践(二):MySQL数据库连接不够用(TooManyConnections)问题的一次分析和解决案例"提到,项目中新增几个数据库 ...
 - 【MySQL】源码编译安装和配置MySql 5.5.32(单实例)
		
[需求描述] 在CentOS环境中,通过编译源码的方式,安装并且配置“单实例”的MySQL5.5.32数据库. MySQL的安装目录为:/application/mysql-5.5.32 MySQL数 ...
 - Windows下多个Mysql实例配置主从(转)
		
https://www.cnblogs.com/jpfss/p/8143720.html 序: 网上有很多类似的文章,也是各种百度出来的,但是对于多数刚开始接触MYSQL主从的小白来说,网上文 ...
 - Windows下多个Mysql实例配置主从
		
序: 网上有很多类似的文章,也是各种百度出来的,但是对于多数刚开始接触MYSQL主从的小白来说,网上文章的代码里面很多技术点都没有理解,有跌打误撞碰上的,但多数都是这篇文章卡主了,换篇文章接着 ...
 
随机推荐
- E20171006-hm
			
trace vt. 跟踪,追踪; 追溯,探索; 探索; 查找; vi. 沿着一小径或道路前进; 可以追溯的; n. 痕迹; 痕迹,踪迹; 微量,极少量; [植 ...
 - python配置文件编写
			
from configparser import ConfigParser # 配置类,专门来读取配置文件# 配置文件结尾:.ini .conf .config .properties .xml# 配 ...
 - Akka源码分析-Remote-ActorSystem
			
前面的文章都是基于local模式分析的,现在我们简要分析一下在remote模式下,ActorSystem的创建过程. final val ProviderClass: String = setup.g ...
 - 微信小程序压缩图片并上传到服务器(拿去即用)
			
这里注意一下,图片压缩后的宽度是画布宽度的一半 canvasToTempFilePath 创建画布的时候会有一定的时间延迟容易失败,这里加setTimeout来缓冲一下 这是单张图片压缩,多张的压缩暂 ...
 - 写出更好的 JavaScript 条件语句
			
1. 使用 Array.includes 来处理多重条件 // 条件语句 function test(fruit) { if (fruit == 'apple' || fruit == 'strawb ...
 - 如何读取 Json 格式文件
			
Json 源文件代码: [ { "Id": "0", "Name": "书籍", "Detail": ...
 - Java系列学习(八)-继承
			
1.代码块 (1)在java中,使用 { } 括起来的代码 被称为代码块 (2)分类: A:局部代码块 [局部位置] [作用:用于限定 变量的生命周期] B:构造代码块 [在类中的成员位置,用{}括起 ...
 - 增加删除div
			
<!doctype html><html><head><meta charset="utf-8"><title>无标题文 ...
 - Ajax——jq中ajax的使用
			
格式化表单 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
 - Zip, Join, GroupJoin
			
Zip 合并兩個序列,產生一個新的對象序列,但連接方式是一对一的(即序列1和第一项连接序列2的第一项),所以最终结果会在较短的序列处终止. Zip在這裏不是壓縮的意思,而是拉鏈,意爲連接兩個序列 Pe ...