为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】: 8
【操作系统】:windows
【CPU】: Intel Xeon E5-2680
【问题描述】*:有一句sql语句在springboot项目执行,返回超时,把sql句子拿出来放到DM自带的工具中执行,只需要3秒;两者使用的DM驱动都是同一个版本的,不知道这种事什么原因引起的。
可以清除对应sql语句的执行计划缓存,再试试。
select cache_item,sqlstr from v$cachepln where sqlstr like '%select * from%';
SP_CLEAR_PLAN_CACHE(上面查出的cache_item);
1、统计信息收集;
2、有绑定变量的话,看下变量传参的实际执行计划和直接写参数值的执行计划是否有区别;
可以开启 jdbc log 应用日志 对问题分析下,使用方法如下
logLevel表示日志级别:
日志按从低到高依次如下(off:不记录;error:只记录错误日志;warn:记录警告信息;sql:记录 sql执行信息;info:记录全部执行信息;all:记录全部),高级别同时记录低级别的信息。
logDir表示存放JDBC日志的路径,可以是相对路径也可以是绝对路径
如果URL是在XML文件中存放的,那就需要对&进行转义,例如
jdbc:dm://dm?logLevel=all&logDir=/jdbclog