为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】: DM8 开发版 (X86平台)
【操作系统】:windows10
【CPU】: AMD 5800H
【问题描述】*:
同一条SQL,达梦比Oracle慢
Oracle只需要0.7秒出结果
达梦需要7秒
如何排查解决,是否是我内存不够?
达梦的库就是Oracle迁移过去的,表数据都一样的
可以发一下sql,执行计划调成文本,看计划代价可能在blkup、slct和sort,先回表后过滤,可以考虑组合索引消除回表,使用hint /*+ enable_index_filter(1) top_order_opt_flag(1) */通过索引过滤并消除排序
可以尝试在WHERE条件和排序字段建复合索引,将TOP_ORDER_OPT_FLAG参数改为1