MySQL最大连接数限制的修改步骤

 更新时间:2022年07月25日 11:31:27   作者:飞鸽FlyGo  
针对一些访问量比较大的网站,Mysql默认的最大连接数可能不够用,需要进行相应的修改,下面这篇文章主要给大家介绍了关于MySQL最大连接数限制的修改步骤,需要的朋友可以参考下

前言

随着现在大部分的工程结构都是微服务化,每个服务一般都有本服务独立的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的最大连接数已修改完成,在开发过程中,尽量合理使用数据库的连接数量。

到此这篇关于MySQL最大连接数限制修改的文章就介绍到这了,更多相关MySQL修改最大连接数限制内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • windows下MySQL数据库移动到其它盘

    windows下MySQL数据库移动到其它盘

    大家好,本篇文章主要讲的是windows下MySQL数据库移动到其它盘,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏
    2021-12-12
  • MySQL数据库卸载以及删除所有有关信息详细步骤

    MySQL数据库卸载以及删除所有有关信息详细步骤

    在MySQL中数据删除操作不仅仅是简单地将某一个或多个行删除,下面这篇文章主要给大家介绍了关于MySQL数据库卸载以及删除所有有关信息的详细步骤,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • MySQL忘记密码恢复密码的实现方法

    MySQL忘记密码恢复密码的实现方法

    流传较广的方法,mysql中文参考手册上的,各位vps主机租用客户和服务器托管用户忘记mysql5.1管理员密码时,可以使用这种方法破解下
    2008-07-07
  • MyISAM和InnoDB引擎优化分析

    MyISAM和InnoDB引擎优化分析

    这几天在学习mysql数据库的优化并在自己的服务器上进行设置,喻名堂主要学习了MyISAM和InnoDB两种引擎的优化方法,需要了解跟多的朋友可以参考下
    2012-11-11
  • MySQL分页分析原理及提高效率

    MySQL分页分析原理及提高效率

    这篇文章主要介绍了MySQL分页分析原理及提高效率的相关资料,需要的朋友可以参考下
    2017-05-05
  • SQLyog的下载、安装、破解、配置教程(MySQL可视化工具安装)

    SQLyog的下载、安装、破解、配置教程(MySQL可视化工具安装)

    SQLyog是一款MySQL可视化工具,他可以将部分SQL操作通过图形化界面操作来完成,方便开发者更好的进行开发及数据库设计,这篇文章主要介绍了SQLyog的下载、安装、破解、配置(MySQL可视化工具安装),需要的朋友可以参考下
    2022-09-09
  • Spring中的InitializingBean和SmartInitializingSingleton的区别详解

    Spring中的InitializingBean和SmartInitializingSingleton的区别详解

    这篇文章主要介绍了Spring中的InitializingBean和SmartInitializingSingleton的区别详解,InitializingBean只有一个接口方法afterPropertiesSet(),在BeanFactory初始化完这个bean,并且把bean的参数都注入成功后调用一次afterPropertiesSet()方法,需要的朋友可以参考下
    2024-01-01
  • Mysql备份多个数据库代码实例

    Mysql备份多个数据库代码实例

    这篇文章主要介绍了Mysql备份多个数据库代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • mysql存储过程之循环语句(WHILE,REPEAT和LOOP)用法分析

    mysql存储过程之循环语句(WHILE,REPEAT和LOOP)用法分析

    这篇文章主要介绍了mysql存储过程之循环语句(WHILE,REPEAT和LOOP)用法,结合实例形式分析了mysql存储过程循环语句WHILE,REPEAT和LOOP的原理、用法及相关操作注意事项,需要的朋友可以参考下
    2019-12-12
  • MySQLBackup备份数据库的操作过程

    MySQLBackup备份数据库的操作过程

    这篇文章主要介绍了MySQLBackup备份数据库的操作过程,包括安装部署和配置备份管理员的相关知识,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-03-03

最新评论