当前位置:网站首页>MySQL修改最大连接数限制
MySQL修改最大连接数限制
2022-08-02 02:47:00 【geejkse_seff】
随着现在大部分的工程结构都是微服务化,每个服务一般都有本服务独立的DB库,对MySQL的连接数要求也是越来越多。如果本地安装的测试数据,没有对MySQL默认连接数修改,测试时,多开几个微服务,可能就遇到数据库连接数过多的问题。对MySQl默认的最大连接数做修改就必不可少了。
一、前提条件
修改数据库是比较危险的动作,修改之前以开发测试的数据库为例,做好数据的备份。以防数据库误操作,丢失数据等等 。
修改MySQL的前提条件:
1、有Linux用户的管理员权限账号,需要对MySQL安装的配置问卷进行修改;
2、MySQL数据库的管理账号。
3、如果有运维,与运维和开发负责人员商量修改,数据是大事,以防数据丢失,做好数据的备份。
二、修改步骤
1、使用root用户登录和连接数据库
#?mysql -uroot -p
输入命令后,提示输入root用户密码,输入密码后,成功登录数据库。

登录MySQL数据库
2、查看当前数据库的最大连接数
mysql>?show variables like?'max_connections';
如下图,MySQL的最大连接数才151,稍微多开几个微服务,基本都会报数据库连接数过多的异常。

查看数据库的最大连接数
3、修改MySQL配置文件
找到MySQL的配置文件并且修改:/etc/mysql/mysql.conf.d/mysqld.cnf
# view /etc/mysql/mysql.conf.d/mysqld.cnf
修改配置文件中的最大连接数,max_connections=2000,修改完保存配置退出编辑状态。
[mysql]
max_connections?=?2000

修改配置文件中的最大连接数
4、查看系统limit限制
使用命令查询系统的文件限制
#?查询文件限制
$?ulimit?-n
1024
如果查看的系统文件限制是65535,说明系统已经修改过了,不需要再修改。
5、修改系统文件限制
5.1、在**/etc/security/limits.conf****最后增加如下两行记录,编辑完保存配置**
#?编辑系统文件配置文件
$?view /etc/security/limits.conf
#?在/etc/security/limits.conf最后增加如下两行记录
* hard nofile 65535
* soft nofile 65535

最后增加如下两行记录
5.2、编辑/etc/pam.d/common-session,加入一行****session required pam_limits.so
#?编辑/etc/pam.d/common-session,
#?加入一行 session required pam_limits.so
$?view /etc/pam.d/common-session

编辑配置文件
5.3、编辑**/etc/profile****,加入ulimit -SHn 65535,保存后,执行scource命令使配置生效,再次查看系统文件限制**
#?编辑/etc/profile,加入ulimit?-SHn 65535
#?编辑完保存
$?view /etc/profile
#?执行scource 命令使配置生效,确认修改是否成功
$?source?/etc/profile
#?再次查看系统limit限制,看配置文件是否生效
$?ulimit?-n
65535

系统配置文件已修改成功
6、修改mysql配置
查找mysql.service 启动文件
$ systemctl status mysql.service
● mysql.service - MySQL Community Server
?Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
?Active: active (running) since Wed 2018-12-19 23:53:28 CST; 16min ago
?Process: 25857 ExecStartPost=/usr/share/mysql/mysql-systemd-start?post (code=exited,?status=0/SUCCESS)
Process:?25843?ExecStartPre=/usr/share/mysql/mysql-systemd-start?pre (code=exited,?status=0/SUCCESS)
?Main?PID:?25856?(mysqld)
??Tasks:?28?(limit:?4915)
?Memory:?185.9M
????CPU:?1.577s
?CGroup: /system.slice/mysql.service
?????????└─25856?/usr/sbin/mysqld
进入目录**/etc/systemd/system/multi-user.target.wants**,找到文件mysql.service;
sudo vim mysql.service,在 [Service] 最后加入:
LimitNOFILE=65535
LimitNPROC=65535

修改mysql的启动配置文件
7、执行下面命令使修改生效
生效刚才修改的配置文件,重新启动MySQL服务。
$?systemctl daemon-reload
$?systemctl restart mysql.service
**8、登录mysql,使用****show variables like “%max_connections%”;**查看最大连接数,这时发现已经改成2000。

最大连接数已修改成功
三、结语
至此MySQL的最大连接数已修改完成,在开发过程中,尽量合理使用数据库的连接数量。
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
- 【LeetCode】102.二叉树的层序遍历
- cadence landscape bindkey
- KICAD 拉线宽度无法修改,解决方法
- 请教各位大佬,如果我代码里面设置了,这个id我在什么地方可以查到呢?连接到mysql cluste
- Flask之路由(app.route)详解
- Install mysql using docker
- 详解最强分布式锁工具:Redisson
- Nanoprobes Polyhistidine (His-) Tag: Recombinant Protein Detection Protocol
- 【LeetCode】94.二叉树的中序遍历
- Nanoprobes多组氨酸 (His-) 标签标记:重组蛋白检测方案
猜你喜欢

CASE2023

Nacos source code analysis topic (1) - environment preparation

灰度传感器、、、diy原理。。图

BioVendor人俱乐部细胞蛋白(CC16)Elisa试剂盒研究领域

22-08-01 西安 尚医通(01)跨域配置、Swagger2、R类、统一异常处理和自定义异常、Logback日志

指针数组和数组指针

Remember a pit for gorm initialization

Chopper webshell feature analysis

因为WiFi原因navicat 无法连接数据库Mysql

第11章_数据库的设计规范
随机推荐
svm.SVC application practice 1--Breast cancer detection
详解最强分布式锁工具:Redisson
1688以图搜货
Talking about the "horizontal, vertical and vertical" development trend of domestic ERP
OperatingSystemMXBean获取系统性能指标
【web】理解 Cookie 和 Session 机制
[Daily LeetCode]——1. The sum of two numbers
递归检查配置项是否更变并替换
【Koltin Flow(三)】Flow操作符之中间操作符(一)
剑指 Offer 14- I. 剪绳子
Chapter 10_Index Optimization and Query Optimization
内卷的正确打开方式
微服务:微智能在软件系统的简述
NAS和私有云盘的区别?1篇文章说清楚
罗德里格斯公式(Rodrigues‘ Rotation Formula)推导
【LeetCode】94.二叉树的中序遍历
淘宝详情.
工程师如何对待开源
四元数、罗德里格斯公式、欧拉角、旋转矩阵推导和资料
启发式合并、DSU on Tree