Ⅰ 如何使用Druid监控sql
如何使用Druid监控sql
1.1 % Processor Time指处理器用来执行非闲置线程时间的百分比。通过此计数器可以确定服务器当前CPU使用百分比。 1.2 % Privileged Time是在特权模式下进程线程执行代码所花时间的百分比。当调用 Windows 系统服务时,此服务经常在特权模式运行
Ⅱ 怎么样配置druid将sql语句及参数记录到日志文件中去
<!-- 每隔5分钟将监控日志输出到日志文件中,单位是毫秒。 -->
<property name="timeBetweenLogStatsMillis" value="300000" />
<!-- 监控数据库 -->
<property name="proxyFilters">
<list>
<ref bean="stat-filter" />
<ref bean="wall-filter" />
<ref bean="log-filter" />
</list>
</property>
<bean id="stat-filter" class="com.alibaba.druid.filter.stat.StatFilter">
<property name="slowSqlMillis" value="3000" />
<property name="logSlowSql" value="true" />
<property name="mergeSql" value="true" />
</bean>
<bean id="log-filter" class="com.alibaba.druid.filter.logging.Log4jFilter">
<!-- <property name="resultSetLogEnabled" value="false" /> -->
<!-- <property name="" value="true" /> -->
</bean>
<bean id="wall-filter" class="com.alibaba.druid.wall.WallFilter">
<property name="dbType" value="oracle" />
<property name="config" ref="wall-filter-config" />
</bean>
<bean id="wall-filter-config" class="com.alibaba.druid.wall.WallConfig" init-method="init">
<property name="dir" value="META-INF/druid/wall/oracle" />
</bean>
Ⅲ druid怎么自定义sql防火墙规则
druid是阿里巴巴开发的为监控而生的数据库连接池,可以非常直观的看到当前应用的数据源、sql执行情况、sql防火墙、web应用、uri监控、spring接口调用监控等。
数据源配置:
<beanid="readAccount"class="com.alibaba.druid.pool.DruidDataSource"init-method="init"destroy-method="close">
<!--数据源驱动类可不写,Druid默认会自动根据URL识别DriverClass-->
<propertyname="driverClassName"value="${jdbc_read.driver}"/>
<!--基本属性url、user、password-->
<propertyname="url"value="${jdbc_read.url}"/>
<propertyname="username"value="${jdbc_read.username}"/>
<propertyname="password"value="${jdbc_read.password}"/>
<!--配置初始化大小、最小、最大-->
<propertyname="initialSize"value="${jdbc.pool.minIdle}"/>
<propertyname="minIdle"value="${jdbc.pool.minIdle}"/>
<propertyname="maxActive"value="${jdbc.pool.maxActive}"/>
<!--配置获取连接等待超时的时间-->
<propertyname="maxWait"value="30000"/>
<!--配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒-->
<propertyname="timeBetweenEvictionRunsMillis"value="30000"/>
<!--配置一个连接在池中最小生存的时间,单位是毫秒-->
<propertyname="minEvictableIdleTimeMillis"value="90000"/>
<propertyname="validationQuery"value="SELECT'x'"/>
<propertyname="testWhileIdle"value="true"/>
<propertyname="testOnBorrow"value="false"/>
<propertyname="testOnReturn"value="false"/>
</bean>
开启web监控:
在数据源配置中,增加以下属性
<propertyname="filters"value="stat"/>
在web.xml中增加以下配置
<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>
开启sql防火墙:
在数据源配置中,增加以下属性
<propertyname="filters"value="stat,wall"/>
开启spring方法调用监控:
在spring配置文件中增加以下配置
<beanid="druid-stat-interceptor"class="com.alibaba.druid.support.spring.stat.DruidStatInterceptor"></bean>
<beanid="druid-stat-pointcut"class="org.springframework.aop.support.JdkRegexpMethodPointcut"scope="prototype">
<propertyname="patterns">
<list>
<value>com.xxx.*</value>
<value>com.xxx1.*</value>
</list>
</property>
</bean>
<aop:config>
<aop:advisoradvice-ref="druid-stat-interceptor"pointcut-ref="druid-stat-pointcut"/>
</aop:config>
Ⅳ druid 中的sql 事务中是什么意思
锁这个东西大爷忘记了。。把多个不可分割的单个操作作为一个整体,就是事务。事务内的操作要么一起执行,要么都不执行。 比如有一个事务叫“转账”,现在由张三给李四转账,张三的钱减少是该事务一个操作,李四的钱增加是该事务的另一个操作。
Ⅳ Druid 的SQL翻译功能如何使用
Druid是阿里巴巴开源平台上的一个项目,整个项目由数据库连接池、插件框架和SQL解析器组成。该项目主要是为了扩展JDBC的一些限制,可以让程序员实现一些特殊的需求,比如向密钥服务请求凭证、统计SQL信息、SQL性能收集、SQL注入检查、SQL翻译等,程序员可以通过定制来实现自己需要的功能。
Ⅵ Apache Druid的SQL查询使用手册
[1] 书写使用说明
[2] 支持查询
[3] 使用说明
[1] 聚合函数
[2] 数值函数
[3] 字符串函数
[4] 时间函数
[5] IP地址函数
[6] 比较运算符
[7] 多值的字符串函数
[8] HLL草图运算符
[9] Theta草图运算符
[10] 分位数草图运算符
[11] 其他功能
[12] 不支持的功能
[1] 没有聚合的查询将使用Druid的Scan本机查询类型。
[2] 近似算法
[1] 通过Http发送json
[2] JDBC
[1] 信息模式
[2] 系统模式
Ⅶ druid sql server 验证
Druid是属于阿里巴巴开源项目,负责人温少锦,人称温少,从2010入职阿里,开发了DRAGOON性能够监控系统,以及被称为最快的JSON解析引擎FASTJSON。
Druid是阿里巴巴开源平台上的一个项目,整个项目由数据库连接池、插件框架和SQL解析器组成。该项目主要是为了扩展JDBC的一些限制,可以让程序员实现一些特殊的需求,比如向密钥服务请求凭证、统计SQL信息、SQL性能收集、SQL注入检查、SQL翻译等,程序员可以通过定制来实现自己需要的功能。
Ⅷ 怎么样配置druid将sql语句及参数记录到日志文件中去
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<!-- 每隔5分钟将监控日志输出到日志文件中,单位是毫秒。 -->
<property name="timeBetweenLogStatsMillis" value="300000" />
<!-- 监控数据库 -->
<property name="proxyFilters">
<list>
<ref bean="stat-filter" />
<ref bean="wall-filter" />
<ref bean="log-filter" />
</list>
</property>
<bean id="stat-filter" class="com.alibaba.druid.filter.stat.StatFilter">
<property name="slowSqlMillis" value="3000" />
<property name="logSlowSql" value="true" />
<property name="mergeSql" value="true" />
</bean>
<bean id="log-filter" class="com.alibaba.druid.filter.logging.Log4jFilter">
<!-- <property name="resultSetLogEnabled" value="false" /> -->
<!-- <property name="" value="true" /> -->
</bean>
<bean id="wall-filter" class="com.alibaba.druid.wall.WallFilter">
<property name="dbType" value="oracle" />
<property name="config" ref="wall-filter-config" />
</bean>
<bean id="wall-filter-config" class="com.alibaba.druid.wall.WallConfig" init-method="init">
<property name="dir" value="META-INF/druid/wall/oracle" />
</bean>
Ⅸ 使用druid记录慢查询sql,能不能获取sql执行的参数
在JdbcSqlStatValue类中,有一个LastSlowParameters参数,是用来保存sql执行的参数的。
以下是一个参考配置:
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
<property name="url" value="${jdbc_url}" />
<property name="username" value="${jdbc_user}" />
<property name="password" value="${jdbc_password}" />
<property name="filters" value="stat" />
<property name="maxActive" value="20" />
<property name="initialSize" value="1" />
<property name="maxWait" value="60000" />
<property name="minIdle" value="1" />
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<property name="minEvictableIdleTimeMillis" value="300000" />
<property name="validationQuery" value="SELECT 'x'" />
<property name="testWhileIdle" value="true" />
<property name="testOnBorrow" value="false" />
<property name="testOnReturn" value="false" />
<property name="poolPreparedStatements" value="true" />
<property name="" value="50" />
</bean>