About me:Oracle ACE pro,optimistic,passionate and harmonious. Focus on ORACLE,MySQL and other database programming,peformance tuning,db design, j2ee,Linux/AIX,Architecture tech,etc
全部博文(172)
发布时间:2020-07-23 17:06:09
1)了解B*tree、Bitmap、IOT等索引类型特点和使用。
2)了解索引的扫描方式以及走不了索引的情况等。
3)索引在分页查询中的应用。
......【阅读全文】
发布时间:2020-07-15 17:21:48
随着业务的增长,生命周期管理单纯对表的管理,已经无法满足目前公司业务增长对存储的需求,因此,急需从其它方面对模型进行精简,而索引是占存储较大的对象,由于冗余索引、无效索引、无用索引等存在,导致索引浪费存储,需要制定一套策略进行管理。
索引监控与分析则是一套很好的方法,ORACLE提供索引monitor的方法(对系统资源使用影响小),但是无法监控索引使用频次,另一种方法可以通过使用AWR视图DBA_HIST_SQL_PLAN,可以查询到索引的使用频次,当然,有些SQL可能进入不了AWR中,因此,我们采用综合的方法:
1) 从AWR中(要求30天以上)查询出未被使用的索引。
2) 对1)中的索引使用ORACLE INDEX MONITOR监控30天。
如果最终查询出的索引仍未被使用,则认为此索引是多余索引,提交对应库负责人确认后予以清除。
......【阅读全文】
发布时间:2020-07-13 16:59:22
使用LEADING、ORDERED、SWAP_JOIN_INPUTS控制表连接顺序......【阅读全文】
发布时间:2020-07-13 09:09:06
MERGE操作可以用一条语句实现UPDATE和INSERT,而且它比传统的关联子查询可能效率更好,避免了FILTER操作,可以走HASH JOIN操作,适合大批量关联更新......【阅读全文】
发布时间:2020-07-13 00:18:03
我们经常会遇到类型转换问题导致索引失效,要么是写SQL时候自己加了TO_CHAR,TO_DATE,TO_NUMBER,要么因为类型不一致,ORACLE做了隐式类型转换导致索引失效。要避免这种问题,还是要在表设计的时候,使用常用类型,避免使用一些不常用的比如NVARCHAR2,TIMESTAMP等,写SQL时候遇到类型不一致的,要先测试好,避免上线后出现问题。......【阅读全文】