Druid详细配置信息
druid的配置项如下
配置 | 缺省值 | 说明 |
name |
配置这个属性的意义在于,如果存在多个数据源,监控的时候 可以通过名字来区分开来。如果没有配置,将会生成一个名字, 格式是:"DataSource-" + System.identityHashCode(this) |
|
jdbcUrl |
连接数据库的url,不同数据库不一样。例如: mysql : jdbc:mysql://10.20.153.104:3306/druid2 oracle : jdbc:oracle:thin:@10.20.149.85:1521:ocnauto |
|
username | 连接数据库的用户名 | |
password |
连接数据库的密码。如果你不希望密码直接写在配置文件中, 可以使用ConfigFilter。详细看这里: https://github.com/alibaba/druid/wiki/%E4%BD%BF%E7%94%A8ConfigFilter |
|
driverClassName | 根据url自动识别 | 这一项可配可不配,如果不配置druid会根据url自动识别dbType,然后选择相应的driverClassName |
initialSize | 0 | 初始化时建立物理连接的个数。初始化发生在显示调用init方法,或者第一次getConnection时 |
maxActive | 8 | 最大连接池数量 |
maxIdle | 8 | 已经不再使用,配置了也没效果 |
minIdle | 最小连接池数量 | |
maxWait |
获取连接时最大等待时间,单位毫秒。配置了maxWait之后, 缺省启用公平锁,并发效率会有所下降, 如果需要可以通过配置useUnfairLock属性为true使用非公平锁。 |
|
poolPreparedStatements | false |
是否缓存preparedStatement,也就是PSCache。 PSCache对支持游标的数据库性能提升巨大,比如说oracle。 在mysql5.5以下的版本中没有PSCache功能,建议关闭掉。 作者在5.5版本中使用PSCache,通过监控界面发现PSCache有缓存命中率记录, 该应该是支持PSCache。 |
maxOpenPreparedStatements | -1 |
要启用PSCache,必须配置大于0,当大于0时, poolPreparedStatements自动触发修改为true。 在Druid中,不会存在Oracle下PSCache占用内存过多的问题, 可以把这个数值配置大一些,比如说100 |
validationQuery |
用来检测连接是否有效的sql,要求是一个查询语句。 如果validationQuery为null,testOnBorrow、testOnReturn、 testWhileIdle都不会其作用。 |
|
testOnBorrow | true | 申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 |
testOnReturn | false | 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能 |
testWhileIdle | false |
建议配置为true,不影响性能,并且保证安全性。 申请连接的时候检测,如果空闲时间大于 timeBetweenEvictionRunsMillis, 执行validationQuery检测连接是否有效。 |
timeBetweenEvictionRunsMillis |
有两个含义: 1) Destroy线程会检测连接的间隔时间 2) testWhileIdle的判断依据,详细看testWhileIdle属性的说明 |
|
numTestsPerEvictionRun | 不再使用,一个DruidDataSource只支持一个EvictionRun | |
minEvictableIdleTimeMillis | ||
connectionInitSqls | 物理连接初始化的时候执行的sql | |
exceptionSorter | 根据dbType自动识别 | 当数据库抛出一些不可恢复的异常时,抛弃连接 |
filters |
属性类型是字符串,通过别名的方式配置扩展插件, 常用的插件有: 监控统计用的filter:stat 日志用的filter:log4j 防御sql注入的filter:wall |
|
proxyFilters |
类型是List<com.alibaba.druid.filter.Filter>, 如果同时配置了filters和proxyFilters, 是组合关系,并非替换关系 |
表1.1 配置属性
加入 druid-1.0.9.jar
ApplicationContext.xml
- < bean name = "transactionManager" class ="org.springframework.jdbc.datasource.DataSourceTransactionManager" >
- < property name = "dataSource" ref = "dataSource" ></ property >
- </ bean >
- < bean id = "propertyConfigurer" class ="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" >
- < property name = "locations" >
- < list >
- < value > /WEB-INF/classes/dbconfig.properties </ value >
- </ list >
- </ property >
- </ bean >
ApplicationContext.xml配置druid
- <!-- 阿里 druid 数据库连接池 -->
- < bean id = "dataSource" class = "com.alibaba.druid.pool.DruidDataSource"destroy-method = "close" >
- <!-- 数据库基本信息配置 -->
- < property name = "url" value = "${url}" />
- < property name = "username" value = "${username}" />
- < property name = "password" value = "${password}" />
- < property name = "driverClassName" value = "${driverClassName}" />
- < property name = "filters" value = "${filters}" />
- <!-- 最大并发连接数 -->
- < property name = "maxActive" value = "${maxActive}" />
- <!-- 初始化连接数量 -->
- < property name = "initialSize" value = "${initialSize}" />
- <!-- 配置获取连接等待超时的时间 -->
- < property name = "maxWait" value = "${maxWait}" />
- <!-- 最小空闲连接数 -->
- < property name = "minIdle" value = "${minIdle}" />
- <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
- < property name = "timeBetweenEvictionRunsMillis" value ="${timeBetweenEvictionRunsMillis}" />
- <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
- < property name = "minEvictableIdleTimeMillis" value ="${minEvictableIdleTimeMillis}" />
- < property name = "validationQuery" value = "${validationQuery}" />
- < property name = "testWhileIdle" value = "${testWhileIdle}" />
- < property name = "testOnBorrow" value = "${testOnBorrow}" />
- < property name = "testOnReturn" value = "${testOnReturn}" />
- < property name = "maxOpenPreparedStatements" value ="${maxOpenPreparedStatements}" />
- <!-- 打开 removeAbandoned 功能 -->
- < property name = "removeAbandoned" value = "${removeAbandoned}" />
- <!-- 1800 秒,也就是 30 分钟 -->
- < property name = "removeAbandonedTimeout" value ="${removeAbandonedTimeout}" />
- <!-- 关闭 abanded 连接时输出错误日志 -->
- < property name = "logAbandoned" value = "${logAbandoned}" />
- </ bean >
dbconfig.properties
- url: jdbc:mysql:// localhost :3306/ newm
- driverClassName: com.mysql.jdbc.Driver
- username: root
- password: root
- filters: stat
- maxActive: 20
- initialSize: 1
- maxWait: 60000
- minIdle: 10
- maxIdle: 15
- timeBetweenEvictionRunsMillis: 60000
- minEvictableIdleTimeMillis: 300000
- validationQuery: SELECT 'x'
- testWhileIdle: true
- testOnBorrow: false
- testOnReturn: false
- maxOpenPreparedStatements: 20
- removeAbandoned: true
- removeAbandonedTimeout: 1800
- logAbandoned: true
web.xml
- <!-- 连接池 启用 Web 监控统计功能 start-->
- < filter >
- < filter-name > DruidWebStatFilter </ filter-name >
- < filter-class > com.alibaba.druid.support.http.WebStatFilter </ filter-class >
- < init-param >
- < param-name > exclusions </ param-name >
- < param-value > *. js ,*. gif ,*. jpg ,*. png ,*. css ,*. ico ,/ druid /* </ param-value >
- </ init-param >
- </ filter >
- < filter-mapping >
- < filter-name > DruidWebStatFilter </ filter-name >
- < url-pattern > /* </ url-pattern >
- </ filter-mapping >
- < servlet >
- < servlet-name > DruidStatView </ servlet-name >
- < servlet-class > com.alibaba.druid.support.http.StatViewServlet </ servlet-class >
- </ servlet >
- < servlet-mapping >
- < servlet-name > DruidStatView </ servlet-name >
- < url-pattern > / druid /* </ url-pattern >
- </ servlet-mapping >
- <!-- 连接池 启用 Web 监控统计功能 end-->
访问监控页面: http://ip:port/projectName/druid/index.html
- 顶
- 1
- 踩
转载于:https://www.cnblogs.com/itcui/p/6397260.html
Druid详细配置信息相关推荐
- nginx+keepalived详细配置信息
Nginx + Keepalived 第一步: 下载keepalived地址:http://www.keepalived.org/download.html 解压安装: tar -zxvf keepa ...
- wifi 联想小新_WiFi 6锐龙5一个都不能少 小新Pro 13详细配置曝光
01小新Pro 13详细配置曝光 最近一段时间,小新笔记本官方微博有关小新Pro 13的信息爆料不停,周一下午,又进一步发布了详细配置信息.除了之前曝光的强劲CPU性能释放.游戏本级散热系统.人脸识别 ...
- Druid 监控配置
Druid 监控配置信息 在 Spring Boot 的()yml(或)配置文件中对 Druid 内置监控页面.Web-JDBC 关联监控和 Spring 监控等功能进行配置,示例代码如下. # Dr ...
- 快速查看电脑详细配置
第一种方法: 1.电脑桌面 → 我的电脑 → 右击鼠标按键,点击菜单"属性" 2.点开页面后,可以看到计算机基本配置信息 3.在此页面卡选择"设备管理器",可以 ...
- 计算机查看硬件win10,win10查看硬件配置_win10查看硬件详细配置
2016-12-18 08:01:36 你好,据我所知,win7怎么看硬件配置:1可以使用360安全卫士,选择工具驱动大师进行查看.2系统下查询. 在开始-运行中输入"dxdiag" ...
- 不会用计算机怎么办,不会看电脑配置怎么办?通过本文就可以详细了解电脑配置信息...
原标题:不会看电脑配置怎么办?通过本文就可以详细了解电脑配置信息 现在,虽然不一定人手一台电脑,但大部分人有电脑还是有的.但是对自己电脑配置一问三不知的用户估计也有不少,不了解电脑配置的用户在买电脑时 ...
- 计算机主机信息怎么看,本机电脑硬件配置信息怎么看?Win7/Win10查看详细电脑配置方法...
电脑配置决定了一台电脑的性能好坏,如果电脑配置没有达到游戏或者软件的要求,那么肯定无法流畅运行的.对于一些小白用户不知道如何查看电脑硬件配置,那么本机电脑硬件配置信息怎么看?下面装机之家小编分享一下W ...
- 配置 IIS 7 显示详细错误信息
如果你在 IIS 7 中只看到诸如 HTTP Error 500 - Internal Server Error (500 - 内部服务器错误) 的简单错误信息,那么可以通过如下步骤配置 IIS7 以 ...
- Springboot 从数据库读取数据库配置信息,动态切换多数据源 最详细实战教程
以前写过一篇教程,Springboot AOP方式切换多数据源(主从两库类似情况使用最佳): https://blog.csdn.net/qq_35387940/article/details/100 ...
最新文章
- 实战并发编程 - 05等效不可变对象CopyOnWriteArrayList适用场景剖析_写时复制COW
- 数据结构学习笔记(四):重识数组(Array)
- java 搭建 web服务器 socket实现
- SpringBoot配置@PropertySource、@ImportResource、@Bean注解
- 11、web端主要应用在哪些领域?
- 【poj1284-Primitive Roots】欧拉函数-奇素数的原根个数
- Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件
- 黑马程序员Python教程的代码--植物大战僵尸游戏代码
- K2P加USB口刷入Padavan
- mysql 换算成百分比_MySQL计算百分比
- (一)5G网络超低延迟背后的黑科技
- 原来古人也在写“爽文”
- 深度操作系统20.7正式发布
- Python 命令行cmd指定颜色设置
- 算法导论 — 4.4 用递归树方法求解递归式
- 【FeatherNets】《FeatherNets:Convolutional Neural Networks as Light as Feather for Face Anti-spoofing》
- 软件产品化, 国内IT人之痛
- 黑苹果 之 神舟战神Z7M-SL7D2
- AJAX入门,什么是AJAX?为什么要用AJAX?如何使用AJAX?
- 魅族pro7plus android10,魅族PRO7和PRO7 Plus有什么区别?哪个好?一文秒懂
热门文章
- Mac版Endnote X9在word中无法插入文献怎么办?
- JavaSE(十二)——AWT
- 图解TCP数据报结构以及三次握手(非常详细)
- 华为服务器维护岗位,服务器日常维护工作
- 正则表达式python实例_常见的python正则用法实例讲解
- 电子科技大学研究生计算机与科学,川大和电子科技大学那个计算机考研专业好?...
- 奇怪的吃播_吃播,我看吐了!
- 【Python】在模仿中精进数据可视化09:近期基金涨幅排行可视化
- 现在的计算机专业(比如机器学习)已经沦为调包专业了吗?
- 【干货】数据分析规范总结!