解决mysql报错:Data source rejected establishment of connection, message from server: \”Too many connectio

当使用mysql连接池时,可能会遇到 “Data source rejected establishment of connection” 报错,这通常是由于数据库连接数过多导致的,可以通过优化连接池参数或增加数据库最大连接数等方式来解决这个问题。

以下是解决该问题的完整攻略:

1. 查看当前的最大连接数

执行以下命令查看当前mysql数据库的最大连接数:

show variables like 'max_connections';

如果输出为默认值的151,那么可以考虑增加最大连接数。

2. 增加最大连接数

修改my.conf或my.ini文件

在mysql的配置文件(my.conf或my.ini)中,找到 [mysqld] 这个配置块,然后使用以下命令将最大连接数值修改为512:

[mysqld]
max_connections=512

修改完成后,需要重启mysql服务才能生效。

3. 检查连接池参数

如果在使用连接池时出现 “Data source rejected establishment of connection” 报错,可能是由于连接池参数设置不合理导致的。可以通过以下方式检查连接池参数是否正确:

//获取连接池的最大活跃连接数
dataSource.getMaxActive();
//获取连接池的最大空闲连接数
dataSource.getMaxIdle();
//获取连接池的最小空闲连接数
dataSource.getMinIdle();
//获取连接池的等待时间,默认为-1,表示一直等待
dataSource.getMaxWaithMillis();

如果以上参数设置过低,可以考虑适当调整参数值。

示例1:

检查连接池参数是否正确的示例代码如下所示:

BasicDataSource dataSource = new BasicDataSource();
dataSource.setUsername("root");
dataSource.setPassword("root");
//设置最大连接数
dataSource.setMaxActive(512);
//设置最大空闲连接数
dataSource.setMaxIdle(256);
//设置最小空闲连接数
dataSource.setMinIdle(10);
//设置等待时间为10秒
dataSource.setMaxWaitMillis(10000);

示例2:

修改mysql的最大连接数的示例代码如下所示:

#找到my.conf或my.ini文件,添加以下配置信息
[mysqld]
max_connections=512

以上就是解决mysql报错 “Data source rejected establishment of connection, message from server: \"Too many connection”的完整攻略,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:解决mysql报错:Data source rejected establishment of connection, message from server: \”Too many connectio - Python技术站

(2)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • MySql索引原理与操作

    MySql索引原理与操作 什么是索引? 在数据库中,索引是一种特殊的数据结构,它可以快速定位到需要查询或处理的数据行。可以理解为是书的目录,通过查看目录可以快速找到需要的内容,而不是逐一翻阅每一页。 索引的优点 提高查询效率:通过索引可以快速定位到需要的数据,降低查询时间复杂度,提高查询效率。 加速排序:对于排序操作,通过索引可以减少排序时间和过程中的IO调…

    MySQL 2023年5月19日
    00
  • Mysql Error Code : 1436 Thread stack overrun

    Mysql Error Code : 1436 Thread stack overrun 是指在 Mysql 服务器运行时,线程栈溢出所引起的错误。这个错误通常可以通过增加线程栈大小或者重新组织查询语句来应对。 以下是针对这个问题的完整攻略: 1. 检查问题是否与查询语句有关 首先,需要确认这个错误是否与某个具体的查询语句有关。可以通过查看 Mysql 日志…

    MySQL 2023年5月18日
    00
  • MySQL调用存储过程和函数方法详解

    MySQL是一个广泛使用的关系型数据库管理系统。它提供了一组强大的存储过程和函数,使得开发者可以在数据库中写复杂的业务逻辑,并可以从应用程序中调用。 调用存储过程和函数的方法: 创建存储过程和函数 存储过程和函数是在MySQL服务器中创建的,因此需要使用MySQL客户端连接到服务器,然后使用CREATE PROCEDURE或CREATE FUNCTION语句…

    Matplotlib 2023年3月10日
    00
  • 浅谈MySQL数据库崩溃(crash)的常见原因和解决办法

    浅谈MySQL数据库崩溃(crash)的常见原因和解决办法 前言 MySQL是一种常用的关系型数据库管理系统,它不仅具有高性能和可靠性,而且易于使用。但是,在使用MySQL时,我们也会遇到一些问题,例如MySQL数据库崩溃(crash)。本篇文章将会简单介绍MySQL数据库崩溃的常见原因和相应的解决方法。 原因 MySQL数据库崩溃的原因可能有很多,以下是几…

    MySQL 2023年5月18日
    00
  • MySQL数据库升级的一些”陷阱”

    关于MySQL数据库升级的”陷阱”,一些需要注意的问题已经有很多人提到了。这里我将针对这些问题给出一份完整攻略,以帮助大家顺利升级MySQL数据库。 一、备份数据 在进行任何操作之前,一定要备份现有的数据库。因为在升级的过程中,可能会发生数据损坏的风险。备份需要选择一种可靠且可恢复的备份方式,比如将整个数据库使用mysqldump命令备份到本地或者远程服务器…

    MySQL 2023年5月18日
    00
  • MySQL索引设计原则深入分析讲解

    MySQL索引设计是数据库系统中非常重要的一环,它直接影响到数据库系统的查询性能。MySQL索引设计原则深入分析可以帮助开发者更好的理解MySQL索引的设计原则,从而更好的应用索引来提高系统的性能。 下面是MySQL索引设计原则深入分析的完整攻略: 1. 索引的基础知识 索引的概念 索引是一种数据结构,用于快速搜索数据库内的特定记录。它可以加快数据库内数据的…

    MySQL 2023年5月19日
    00
  • mysql中的7种日志小结

    当我们使用MySQL时,我们可能会遇到各种问题,比如数据丢失、故障恢复等。为了解决这些问题,MySQL提供了一组非常有用的日志。 MySQL中有7种主要的日志,它们是: 错误日志 (error log) 查询日志 (query log) 二进制日志 (binary log) 慢查询日志 (slow query log) 中继日志 (relay log) 事务…

    MySQL 2023年5月18日
    00
  • MySQL分页Limit的优化过程实战

    MySQL分页Limit的优化过程实战,主要包括以下几个步骤: 步骤一:查询总数 在进行分页查询时,通常需要查询数据表中总共有多少条数据。这个过程可以使用如下语句实现: SELECT COUNT(*) FROM 表名; 该语句会返回表中的总行数,我们可以将其保存到变量中,以供后续使用。 步骤二:查询指定页数据 查询指定页的数据时,可以使用LIMIT进行限制。…

    MySQL 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部