首页 > 数据库 >MySQL连接数超出最大值报错及修改

MySQL连接数超出最大值报错及修改

时间:2023-10-11 17:34:32浏览次数:38  
标签:最大 更改 连接数 connections 修改 报错 MySQL

报错:

create connection SQLException, url: jdbc:mysql://xx.xxx.x.xx:6306/hksk-cloud-mes?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai, errorCode 1040, state 08004

原因:

该问题产生的原因是数据库本身的连接数都被占用,造成微服务无连接可用,但是为啥会出现这种情况呢?!(PS:第一次遇到这类问题)自己查一下数据库目前的运行状态,发现数据库有近152个连接正在被使用(最大限制是151),继续追查这些连接都是谁在用。最后,终于找到了源头,是由于同事在用这个数据库跑自己本地环境,最终造成数据连接都被占用,导致我启动不了。

提供一种解决方式:(我用的是MySQL命令,还有其他的修改方式,自行百度)

MySQL:

1.登录到 MySQL:首先,使用 MySQL 的客户端工具(如命令行或 MySQL Workbench)以管理员或具有足够权限的用户身份登录到 MySQL 服务器。
2.查看当前的最大连接数:你可以执行以下命令来查看当前的最大连接数限制:

SHOW VARIABLES LIKE 'max_connections';

这将显示当前的最大连接数设置。

3.修改最大连接数:要修改最大连接数,你可以执行以下 SQL 命令,将新的最大连接数设置为你所需的值(假设你想将最大连接数设置为300):

SET GLOBAL max_connections = 300;

请注意,上述命令会修改全局的最大连接数限制。如果你希望只修改当前会话的连接数限制,可以使用以下命令:
SET SESSION max_connections = 300;

这将只影响当前会话,不会全局更改最大连接数。

4.验证更改:为了确保更改已成功应用,你可以再次运行以下命令来检查新的最大连接数:

SHOW VARIABLES LIKE 'max_connections';

确保它显示你刚刚设置的新值。

5.重新启动 MySQL:有时,你可能需要重新启动 MySQL 服务器,以确保更改生效。这可以通过执行以下命令来完成:

FLUSH PRIVILEGES;

之后,你可以重新启动 MySQL 服务器,使更改生效。
请注意,修改最大连接数是一个敏感操作,应该慎重考虑,特别是在生产环境中。确保设置一个合适的连接数限制,以避免资源耗尽或性能问题。此外,确保你有足够的权限来执行这些更改。

标签:最大,更改,连接数,connections,修改,报错,MySQL
From: https://www.cnblogs.com/Galaxy1/p/17757740.html

相关文章

  • C++ - 连接mysql数据库
    1.准备工作1.1把libmysql.dll和libmysql.lib文件复制到工程目录下首先,我们要找到刚刚开始下载的MySQL数据库的安装目录,打开目录,并且将libmysql.dll文件和libmysql.lib文件复制到工程目录下~我安装MySQL的路径:E:\mysql-5.7.42-winx64\lib把libmysql.dll文件和l......
  • C++ - 操作mysql数据库
    操作数据库的案例#include<stdio.h>#include<stdlib.h>#include<mysql.h>//固定不变的MYSQLmysql;//一个数据库结构体MYSQL_RES*res;//一个结果集结构体MYSQL_ROWrow;//char**二维数据,存放一条条记录voidconnect();//连接数据库voidinsert();//插入......
  • MySQL优化
    1.性能优化:1.1表结构优化(下述建议针对数据量巨大,每一点空间都需要节省的情况,当然在设计初期能考虑到以下建议最好)A:字段设计优化1.1.1整数类型:  1.对于整数int类型,数据量较大的情况下建议区分tinyint,int,bigint,三者所占据的空间有很大的......
  • mysql 删除数组 json 字段中的某个指定值
    例:SELECTcar_imgFROMlogistics_car_infoWHEREcar_id=2--结果为:["1","2","3","4"]SELECTJSON_SEARCH(car_img,'one','4')FROMlogistics_car_infoWHEREcar_id=2--结果为:"$[3]"SELE......
  • MySQL的行锁和表锁机制
    一、引言​ 在数据库管理系统中,锁是用来控制对数据的访问的机制。MySQL既支持行级锁(Row-levelLocking),也支持表级锁(Table-levelLocking)。​ MySQL引擎中,MyISAM不支持行锁,而InnoDB支持行锁和表锁。二、行锁(Row-levelLocking)​ 行锁是指对数据表中的一行记录进行锁定,其他事......
  • mysql 中 timestampdiff 一个让人费解的问题
    取当前时间 使用上面取到的时间与now()使用timestampdiff进行month级别比较 将上面取到的日期递增一个月再次比较 结果让人很费解 在此给自己提个醒,mysql单纯使用日期还是用 current_date吧......
  • 在Ubuntu22.04上安装MySQL-Server,并配置可视化界面SQL-Workbench
    在Ubuntu22.04上安装MySQL-Server,并配置可视化界面MySQL-Workbench彻底删除MySQL若您是首次,在Ubuntu22.04上崭新安装mysql,可以略过该步。首先卸载mysql-common:sudoapt-getremovemysql-common然后卸载已经安装的mysql-server:sudoapt-getautoremove--purgemysql-ser......
  • @Test下jedisManager.getJedis报错NullPointerException
    原文链接:https://www.longkui.site/error/test%e4%b8%8bjedismanager-getjedis%e6%8a%a5%e9%94%99nullpointerexception/4813/报错代码:importorg.junit.Test;importredis.clients.jedis.Jedis;@AutowiredprivateJedisManagerjedisManager;publicclassTestDem......
  • c++编译报错解决办法
    所有的警告都被当作是错误在全局域:cc1plus:错误:unrecognizedcommandlineoption‘-Wno-unknown-warning’[-Werror]cc1plus:所有的警告都被当作是错误解决办法:去除CMakeLists.txt中的-Werror......
  • 问题记录贴:vue-i18n在弹出框中$t()报错:TypeError: Cannot read property '_t' of unde
    网上有用的解决方法:vue国际化在弹出框中$t()报错:TypeError:Cannotreadproperty'_t'ofundefined大佬给出的解决方法:弹窗是一个新的Vue对象,只需要单独给弹窗重新绑定i18n即可。代码://dialog/main.jsimportcustomDialogfrom'./dialog.vue'importi18nfrom'@/i18n'......