应用系统SQL优化

  调整目标:

u 1.减少大表全表扫描  
u 2.优化索引使用
u 3.减少复杂连接的sql
u 4.减少动态sql的使用
u 5.数据库的优化器
u
 
 
踪优化SQL语句的方

SQL执行

u

u

u

u

u

5.第三方oracle sql 工具
4.Oracle sql Analyze 3.Sql*plus auto trace 2.Sql trace 1.Explain plan
 
u Sql*plus auto trace
创建执行计划基础表
>@/oracle/product/9.2.0.4/rdbms/admin/utlxplan
>set autotrace on
第一种情况使用索引
   >select count(*) from t_pub_jnl_sav
     where tran_date = 37965
     and clt_seqno = 999999999000897
   >Execution Plan
     ----------------------------------------------------------
      0      SELECT STATEMENT Optimizer=CHOOSE
      1    0   SORT (AGGREGATE)
      2    1     INDEX ( UNIQUE SCAN ) OF 'IDXPK_PUB_JNL_SAV' (UNIQUE)
 
踪优化 SQL 语句的方
 
u Sql*plus auto trace
第二钟情况没有使用到索引
   >select count(*) from t_pub_jnl_sav
     where acc1 = ‘605810000000000000’
u Execution Plan
u ----------------------------------------------------------
u    0      SELECT STATEMENT Optimizer=CHOOSE
u
 
SQL使用建
 
1) 减少全表扫描 , 充分使用 rowid 或索引
2) 减少相同 sql 访问 ORACLE 的次数
2) TRUNCATE 替代 DELETE
3) 减少包含 like * sql
4) select count(*) 选择记录数 , 尽量 select count 索引字段
5)Select list select 你需要的字段
   1    0   TABLE ACCESS (FULL) OF 'T_PUB_JNL_SAV
6.调整数据库表存储参数调优DML SQL语句
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值