|
楼主,您好:
我做了如下实验,进行三次全表扫描,是11.2.0.3的库,您不是说11g全表扫描是不会把buffer header移动到主lru链表上吗?那为什么我的实验结果不太一样呢?
SQL> select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
PL/SQL Release 11.2.0.3.0 - Production
CORE 11.2.0.3.0 Production
TNS for Linux: Version 11.2.0.3.0 - Production
NLSRTL Version 11.2.0.3.0 - Production
SQL> show sga;
Total System Global Area 238530560 bytes
Fixed Size 1344144 bytes
Variable Size 155192688 bytes
Database Buffers 79691776 bytes
Redo Buffers 2301952 bytes
SQL> select segment_name,bytes/1024/1024 from dba_segments where segment_name='A3_76M';
SEGMENT_NA BYTES/1024/1024
---------- ---------------
A3_76M 72
SQL> alter system flush buffer_cache;
System altered.
SQL> select cnum_set,cnum_repl,anum_repl,cnum_write,anum_write from x$kcbwds;
CNUM_SET CNUM_REPL ANUM_REPL CNUM_WRITE ANUM_WRITE
---------- ---------- ---------- ---------- ----------
0 0 0 0 0
0 0 0 0 0
9424 9424 9422 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
8 rows selected.
SQL> set autotrace on
SQL> select count(*) from a3_76m;
COUNT(*)
----------
3000000
Execution Plan
----------------------------------------------------------
Plan hash value: 3908218
---------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
---------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 2447 (1)| 00:00:30 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| A3_76M | 2938K| 2447 (1)| 00:00:30 |
---------------------------------------------------------------------
Note
-----
- dynamic sampling used for this statement (level=2)
Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
17802 consistent gets
8954 physical reads
0 redo size
423 bytes sent via SQL*Net to client
415 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed
SQL> select count(*) from a3_76m;
COUNT(*)
----------
3000000
Execution Plan
----------------------------------------------------------
Plan hash value: 3908218
---------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
---------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 2447 (1)| 00:00:30 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| A3_76M | 2938K| 2447 (1)| 00:00:30 |
---------------------------------------------------------------------
Note
-----
- dynamic sampling used for this statement (level=2)
Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
17802 consistent gets
8951 physical reads
0 redo size
423 bytes sent via SQL*Net to client
415 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed
SQL> select count(*) from a3_76m;
COUNT(*)
----------
3000000
Execution Plan
----------------------------------------------------------
Plan hash value: 3908218
---------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
---------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 2447 (1)| 00:00:30 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| A3_76M | 2938K| 2447 (1)| 00:00:30 |
---------------------------------------------------------------------
Note
-----
- dynamic sampling used for this statement (level=2)
Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
17802 consistent gets
8951 physical reads
0 redo size
423 bytes sent via SQL*Net to client
415 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed
SQL> set autotrace off
SQL> select cnum_set,cnum_repl,anum_repl,cnum_write,anum_write from x$kcbwds;
CNUM_SET CNUM_REPL ANUM_REPL CNUM_WRITE ANUM_WRITE
---------- ---------- ---------- ---------- ----------
0 0 0 0 0
0 0 0 0 0
9424 9424 9111 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
8 rows selected.
|
|