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
全部博文(169)
发布时间: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时候遇到类型不一致的,要先测试好,避免上线后出现问题。......【阅读全文】
发布时间:2020-07-08 16:13:03
集合类型包括index by table,nested table,varray三种,集合是存放同类元素的一个容器,使用集合有许多优点。
1. 保持列表的维护轨迹。也可以使用临时表或分割字符来获得列表轨迹等,但是使用集合是高效代码干净的。
2. 双向关联和自动访问的游标。在plsql中游标只允许向前fetch,若将游标的信息存到集合中,则可以向前后操作。
3. 提高查询的性能。
4. 缓存数据库信息。......【阅读全文】