修正ORACLE表的高水位线HWM

HWM 全名HIGH WATER MARK

在ORACLE中,执行对表的删除操作不会降低该表的高水位线。而全表扫描将始终读取一个段(extent)中所有低于高水位线标记的块。如果在执行删除操作后不降低高水位线标记,则将导致查询语句的性能低下。下面的方法都可以降低高水位线标记….

PLSQL_CODE_TYPE、PLSQL_OPTIMIZE_LEVEL

今天 看题库里发现有提到两个参数PLSQL_CODE_TYPE、PLSQL_OPTIMIZE_LEVEL

PLSQL_CODE_TYPE 有两个值{ INTERPRETED | NATIVE }前者为默认,我觉的应该就是开发语言里编译后的C与汇编语言的区别,一种是字节编码一种是机器码

■ INTERPRETED….

oracle listener监听设密码作用

oracle 的监听机制是外部应用程序连接oracle的入口。用oracle提供的lsnrctl 程序进行管理。一般很多人在管理oracle的时候,往往忽略对listener 的安全管理:监听在端口1521(默认端口)上的oracle tnslsnr未设置口令保护!

  这会存在这个安全隐患:远程的Oracle tnslsnr服务器没有被设置密码,一个攻击者….

oracle查询最占用资源的查询

从V$SQLAREA中查询最占用资源的查询
select b.username username,a.disk_reads reads,
a.executions exec,a.disk_reads/decode(a.executions,0,1,a.executions) rds_exec_ratio,
a.sql_text Statement
from v$sqlarea a,dba_users b
where a.parsing_user_id=b.user_id
and a.disk_reads > 100000
order by a.disk_reads desc;
用buffer_gets列来替换disk_reads列可以得到占用最多内存的sql语句的相关信息。
V$SQL是内存共享SQL区域中已经解析的SQL语句。
….

sql 优化之 hint篇

在SQL语句优化过程中,我们经常会用到hint,现总结一下在SQL优化过程中常见Oracle HINT的用法:
1. /*+ALL_ROWS*/
表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化.
例如:
SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO=’SCOTT’;
2. /*+FIRST_ROWS*/ …..