Ⅰ 如何使用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>