关于mysql数据库配置和java针对数据库配置详解

查看mysql链接池命令:SHOW VARIABLES LIKE '%max_connections%';mysql

查看mysql timeout命令:SHOW VARIABLES LIKE '%timeout%'sql

 

Mysql服务器默认的“wait_timeout”是8小时【也就是默认的值默认是28800秒】,也就是说一个connection空闲超过8个小时,Mysql将自动断开该connection,通俗的讲就是一个链接在8小时内没有活动,就会自动断开该链接。
wait timeout的值能够设定,但最多只能是2147483,不能再大了。也就是约24.85天
MySQL经过my.ini 在
# The TCP/IP Port the MySQL Server will listen on
port=3306
下面添加数据库

 

DBCP配置说明:
initialSize=10   链接池启动时建立的初始化链接数量(默认值为0)
minIdle=5  minIdle: 最小空闲链接,低于这个数量会被建立新的链接;该参数越接近maxIdle,性能越好,由于链接的建立和销毁,都是须要消耗资源的;可是不能太大,由于在机器很空闲的时候,也会建立低于minidle个数的链接
maxIdle=30 最大空闲数,数据库链接的最大空闲时间。超过空闲时间,数据库链接将被标记为不可用,而后被释放。设为0表示无限制。maxIdle不能设置过小,由于假如在高负载的状况下,链接的打开时间比关闭的时间快,会引发链接池中idle的个数 上升超过maxIdle,而形成频繁的链接销毁和建立,
maxActive=200 最大链接数量  这个值通常设成与用户并发数相同
maxWait=60000 最大等待时间,当没有可用链接时,链接池等待链接释放的最大时间,超过该时间限制会抛出异常,若是设置-1表示无限等待(默认为无限,调整为60000ms,避免因线程池不够用,而致使请求被无限制挂起)
timeBetweenEvictionRunsMillis=60000
minEvictableIdleTimeMillis=300000
      timeBetweenEvictionRunsMillis和minEvictableIdleTimeMillis一块儿使用,每 timeBetweenEvictionRunsMillis毫秒秒检查一次链接池中空闲的链接,把空闲时间超过 minEvictableIdleTimeMillis毫秒的链接断开,直到链接池中的链接数到minIdle为止 主要把这两个参数加上就好。
    mysql配置中的wait_timeout值必定要大于等于链接池的 minEvictableIdleTimeMillis值,不然mysql会在wait_timeout的时间后关闭链接,然而链接池还认为该链接可用,这样就会产生异常。
removeAbandoned=true  是否清理 若是开启了removeAbandoned,当getNumIdle() < 2) and (getNumActive() > getMaxActive() - 3)时被触发.
removeAbandonedTimeout=1800  秒没有使用的活动链接,清理后并无放回链接池
logAbandoned=true  链接池收回空闲的活动链接时是否打印消息
poolPreparedStatements=false 开启池的prepared(默认是false,未调整,通过测试,开启后的性能没有关闭的好。)
maxPoolPreparedStatementPerConnectionSize=20  开启池的prepared 后的同时最大链接数(默认无限制,同上,未配置)服务器

相关文章
相关标签/搜索