1.--加快关联表查询速度,设置每次块读取数
此技巧常用语存储过程中,每次读取块的大小(128)也需要根据实际需要和机器的配置综合考虑 2.当查询中存在对列的函数操作时,此时此列索引是无效的(可建立函数索引),例如to_char(abc,'xxxx'),abc字段索引失效 3.like 'abc%'使用索引,like '%abc%'不使用索引(自己去google原因) 4.
5.导数据时可使用 insert into tab_abc nologging select * from tab_cde;(原理自己查,你会学到更多) 6.alter table hu move partition "REN130602" compress parallel 8 nologging; 压缩表可提高查询效率,但会大大降低插入和删除效率(个人建议当表大于100G时在考虑吧) 7.尽量少使用Truncate,别初生牛犊不怕虎,随便干掉一个表,这个习惯会使你痛不欲生的。 8.即使干掉了也别怕,Oracle 9i开始支持Flashback Query恢复误删除数据.(truncate的也可以回复,但是有前提的) 9.动态游标打开后一定记得关闭。 ------------------------------------------------------------------------------------------------- 锁表的处理 第一步,查询出被锁的表的session_id,和serial#。
第二步,kill session
此处注意,看好是不是你自己锁的表,看准了在kill 第三部,一般上两个步骤就搞定锁表了,如果杀不掉,就进入到OS级别杀......
linux下 kill -9 12345(12345为上边查询出的spid) 此处更应注意,kill错了什么事情都可能发生。 ------------------------------------------------------------------------------------------------- 好多都是脑袋想的,平时没记录,语句肯定会有错误的地方,希望大家抱着学习的态度去看。 知识比较基础,望牛人楼下补充并指点错误....感谢。 |
Oracle效率小技巧
最新推荐文章于 2025-09-09 17:00:50 发布