`
eliotlb
  • 浏览: 21802 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

db2执行计划分析

阅读更多

  在进行一个系统的二线技术维护时,一线的同事报告有个基于服务执行时间特别长,经分析师一个update的操作执行了2个小时,发现涉及2个表的操作,有个表数据量就80多万。该系统的数据库是db2。

定位到发生问题的sql,在生产系统上申请跑db2expln 拿到了package的执行计划,找到section,看到了sql的cost的确很高。db2expln这个工具真不错,尤其是可以出执行计划图。这个图真的很有用,如果是文字信息,要看半天。看图很方便,类似是一颗树,只用掌握从下到上,从左到右,就能明白db2执行这个sql的过程。

一个类似update t1 set col1 = (select col1 from t2 where t1.col2 = t2.col2)where col3 in (select col3 from t2 where col3 = 'xxx') ,而且where之后的过滤值只有500多条记录。最后根据执行计划,发现在t2表上没有使用索引,导致对t2表的全表扫描。即便数据量小,由于全表扫描也会产生问题。在t2表上加了索引后,从2小时变成秒级。

但在内部测试期间,还有点小的花絮。同事在建完索引后,执行了reorg,runstat后,跑执行计划的时候,使用的db2expln指定sql的方式,发现cost降了很多。但在系统运行时,却没有任何变化。最后发现他做db2rbind 但没有指定 all选项,由于只新增索引,bnd没有发生过变化,没有重新bind bnd文件,程序bnd包中的sql的执行计划没有发生变化。

 

分享到:
评论

相关推荐

    db2执行计划的使用和更新

    总之,深入理解DB2执行计划的创建、分析与维护,对于优化查询性能、提高数据库响应速度具有重要意义。通过熟练掌握相关工具和技术,可以确保数据库资源被高效利用,从而提升整体系统的可靠性和用户体验。

    db2查看sql执行计划

    通过查看执行计划,可以了解到查询的具体执行流程,从而帮助分析查询性能并进行优化。 ### 三、使用DB2EXPLN工具查看执行计划 #### 1. DB2EXPLN工具介绍 `DB2EXPLN`是DB2提供的一款用于查看SQL执行计划的命令行...

    DB2查询访问计划分析与优化—张广舟.pdf

    ### DB2查询访问计划分析与优化 #### 一、引言 在数据库管理系统的领域内,查询优化是一项至关重要的技术,它直接影响到查询性能的好坏。IBM DB2作为一款先进的关系型数据库管理系统,其内置的优化器能够在处理复杂...

    DB2索引分析器使用简述

    “db2advis”是一个用于分析和优化数据库中SQL语句执行计划的工具。它可以针对具体的SQL语句或一组SQL语句提供优化建议,包括但不限于创建新的索引、调整现有索引以及建议是否使用Materialized Query Tables (MQTs) ...

    DB2查询分析器

    此外,查询分析器通常还具有性能监控和调优工具,帮助识别和解决潜在的性能瓶颈,例如通过分析查询执行计划来优化索引的使用。 除了基本的查询执行,分析器还可能包含其他高级特性,如数据导入导出、报表生成、数据...

    DB2数据库网络协议分析报告

    通过这些DDM术语,DB2能够处理各种复杂的数据库操作,包括但不限于SQL语句的执行、事务管理、安全认证以及特殊注册设置的传播。分析DRDA报文格式对于理解DB2数据库的内部工作原理、性能优化和问题排查至关重要。通过...

    DB查询分析器批量执行多条SQL语句并查看各自的执行时间

    以DB2数据库为例,演示如何使用《DB查询分析器》执行多条SQL语句并获取执行时间: **步骤A**:连接到数据库`unit1562`后,在命令窗口输入多条SQL语句,然后点击“运行”按钮或按F5键。 **步骤B**:等待所有SQL语句...

    DB2数据库性能分析步骤

    ### DB2数据库性能分析步骤 在企业级应用中,DB2作为一款强大的关系型数据库管理系统,在数据处理方面具有显著优势。然而,随着业务量的增长,可能会出现数据库性能瓶颈,这不仅影响用户体验,还可能导致系统响应...

    DB2 SQL语句性能分析方法

    IBM DB2 Universal Database (UDB) 作为一款成熟且功能强大的数据库产品,提供了多种工具帮助用户监控和分析SQL语句的执行情况。其中,“语句事件监测器”是一项非常实用的功能,它能够详细记录SQL语句的执行细节,...

    db2常见问题分析

    1. **使用 db2expln 分析 SQL 执行计划**: 将问题 SQL 语句写入文本文件(以分号结尾),并运行: ```shell db2expln –d db_name -f sql_file -g -o sql.explain ``` 查看 `sql.explain` 文件以了解 SQL 的...

    老司机的DB2性能分析报告

    - **SQL执行计划**: 分析了SQL语句的执行路径。 - **总结与建议**: 根据SQL执行效率,提供了改写SQL、添加提示等优化建议。 通过以上分析可以看出,这份DB2性能分析报告从多个维度深入剖析了数据库性能的影响因素,...

    DB2 查询分析器 C# ERWIN

    DB2查询分析器C# ERWIN利用DB2的API或ODBC/JDBC驱动来执行SQL查询,与数据库进行通信。 3. **ERWIN数据建模工具**: ERWIN是一款流行的数据建模软件,允许用户创建和管理实体关系模型。它支持物理和逻辑数据模型,...

    db2死锁问题分析及解决方案

    ### DB2死锁问题分析及解决方案 #### 一、引言 在数据库管理与维护过程中,死锁问题是一个常见的挑战,特别是在使用IBM DB2这样的大型关系型数据库管理系统时。本文将详细探讨DB2中死锁问题的分析方法及有效的解决...

    db2批处理执行的命令(一)

    本篇主要关注的是DB2的批处理执行,这对于自动化任务管理和大数据处理至关重要。批处理是指将一系列数据库操作组合成一个脚本或命令文件,然后一次性执行这些操作,从而提高效率并减少错误。 标题中的“db2批处理...

    DB2性能调优资料,解决SQL执行慢的问题

    2. **参数化查询**:避免使用动态SQL,尽可能使用参数化查询,这有助于DB2优化器生成高效的执行计划。 3. **合理使用索引**:为经常用于WHERE子句的列创建索引,但也要注意过度索引可能带来的维护成本和写操作性能...

    DBeaver 数据库客户端

    1. **DB2数据库**: IBM的DB2是企业级的关系型数据库管理系统,广泛应用于大型企业和关键业务应用。DBeaver支持DB2的不同版本,包括LUW(Linux, Unix, Windows)和z/OS等,允许用户进行SQL查询、数据编辑、表设计、...

    数据仓库基于DB2 -详解分析

    此外,DB2的并行执行引擎和查询优化器对于数据仓库至关重要。它们能智能地规划查询路径,分配计算资源,确保高并发环境下的高效查询。尤其在处理电信行业的海量通话记录、客户行为数据时,这些特性尤为关键。 在...

Global site tag (gtag.js) - Google Analytics