[oracle@rhel63single ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Sun Apr 26 13:54:56 2015
Copyright (c) 1982, 2013,
Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> alter system set "_serial_direct_read" = false sid = '*';
System altered.
SQL> show parameter serial
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
_serial_direct_read string FALSE
serial_reuse string disable
SQL> show parameter pfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /u02/app/oracle/product/11.2.0
.4/db_1/dbs/spfiletest.ora
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 1068937216 bytes
Fixed Size 2260088 bytes
Variable Size 612369288 bytes
Database Buffers 448790528 bytes
Redo Buffers 5517312 bytes
Database mounted.
Database opened.
SQL> show parameter serial
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
_serial_direct_read string FALSE
serial_reuse string disable
SQL> select x.ksppinm, y.ksppstvl
2 from x$ksppi x , x$ksppcv y
3 where x.indx = y.indx
4 and x.ksppinm like '_serial_direct_read'
5 order by x.ksppinm;
KSPPINM
--------------------------------------------------------------------------------
KSPPSTVL
--------------------------------------------------------------------------------
_serial_direct_read
FALSE
值得注意的是,_serial_direct_read的默许值是auto,
以下参考自:http://www.savedba.com/?p=619
在11gr2以后,当1个表的块数大于_small_table_threshold的时候,就被判定为大表,否则就视为小表。对大表,在进行全表扫描的时候,oracle会根据_serial_direct_read的值来肯定是不是履行direct path read,如果值为auto,那就会direct path read。
参考文章:
http://www.eygle.com/archives/2012/05/oracle_11g_direct_path_read.html
http://www.savedba.com/?p=619