1. ORACLE 数据库缓冲区缓存与共享池SQL查询和PL/SQL函数结果缓存的区别
1、数团咐陵据库缓冲区DB_BUFFER只能缓存访问过的BLOCK,部分解决了物理读的问题,查询仍然需要大量的逻辑读。
2、SQL缓存结果集/*+RESULT_CACHE*/它缓存的是查询的结果。不在需要大量的逻辑读,不在需要任何的复杂计算,而是直接将已经缓存的结果返回。
3、对于采用了RESULT_CACHE的函数,Oracle自动将函数的返简胡回结果缓存,下次执行的时候,不会实际执行函数,而是直接返回结果。塌戚由于缓存的结果存储在SGA中,因此所有的会话可以共享这个结果。