如何查看mysql数据库连接池信息
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何查看mysql数据库连接池信息相关的知识,希望对你有一定的参考价值。
参考技术A 1、把数据库驱动包 copy 到 %CATALINA_HOME%\common\lib 下。2、修改 %CATALINA_HOME%\conf\server.xml 文件,在 <Host> 节点下添加:
XML/html code?
<!-- appName 为项目名 --!>
<Context path="/appName" docBase="appName" auth="Container">
<Resource name="jdbc/mysqlDS" scope="Shareable"
type="javax.sql.DataSource"
url="jdbc:mysql://localhost:3306/test?useUnicode=true&charact-erEncoding=GBK"
driverClassName="com.mysql.jdbc.Driver"
username="root" password="111111"
maxWait="3000" maxIdle="100" maxActive="10" />
</Context>
(或者在 %appName%\META-INF 下建立 context.xml,内容为上面的代码。)
3、修改 web.xml,在 <web-app> 节点下添加:
XML/HTML code?
import java.sql.Connection;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
public class DBUtil
public Connection getConnection() throws Exception
Context context = new InitialContext();
// 获取数据源
DataSource ds = (DataSource) context.lookup("java:comp/env/jdbc/MySQLDS");
// 获取数据库连接
Connection conn = ds.getConnection();
if (conn != null && !conn.isClosed())
return conn;
else
return null;
本回答被提问者和网友采纳
MySql 数据库连接池
最近发布的一个项目总是无缘无故的断线,在IIS机器上直接浏览也不会出现黄页面,就是一直加载,最后断线。
重启IIS后恢复正常。
经过几次后,查看了IIS日志和WINDOWS日志,在WINDOWS日志中发现错误信息如下:
<Data>error connecting: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.</Data>
大概百度了一下是数据库连接池的问题,解决方式如下:
show variables like ‘max_connections‘ //显示最大的数据库连接数
set GLOBAL max_connections = 200; //修改最大数据库连接数
<add key="data" value="server=IP; Port=3306; uid=root; pwd=root;database=data;pooling=true;min pool size=5;max pool size=512;connect timeout = 20; "/>
不知是否已经根治,但目前还未出现问题。
以上是关于如何查看mysql数据库连接池信息的主要内容,如果未能解决你的问题,请参考以下文章