consistent gets :db buffer cache中的块被访问的次数,不管你是CR块还是普通的块。只要被访问一次,consistent gets就加1,
SQL>show arraysize
15
显示了一次返回行数的限制,比如说一个块中有1000行数据,我要全部逻辑读这1000条数据需要1000/15 次。如果set arraysize 1000 那么就需要一次逻辑读。
它表示从Oracle服务器端一次只传递15行记录到客户端(SQLPLUS),当然了JDBC,WEBLOGIC也有行预取,具体自己Google。
db block gets : db buffer cache被更改了,计数加1。
SQL> alter system flush buffer_cache;
系统已更改。
SQL> set autot
用法: SET AUTOT[RACE] {OFF | ON | TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]]
SQL> set autot traceonly stat
SQL> select * from t
已选择798945行。
统计信息
----------------------------------------------------------
1 recursive calls
0 db block gets --这个为0
63677 consistent gets
11118 physical reads
0 redo size
85740332 bytes sent via SQL*Net to client
586267 bytes received via SQL*Net from client
53264 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
798945 rows processed
SQL> select * from t;
已选择798945行。
统计信息
----------------------------------------------------------
0 recursive calls
0 db block gets
69587 consistent gets --全是一致性得到,因为已经在Buffer cache中
0 physical reads
0 redo size
85740332 bytes sent via SQL*Net to client
586267 bytes received via SQL*Net from client
53264 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
798945 rows processed
SQL> select * from t for update;
已选择798945行。
统计信息
----------------------------------------------------------
476 recursive calls
812439 db block gets --更新时,产生这个
884932 consistent gets
5 physical reads
160912940 redo size
73057198 bytes sent via SQL*Net to client
586267 bytes received via SQL*Net from client
53264 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
798945 rows processed
SQL> rollback;
回退已完成。
SQL> alter system flush buffer_cache;
系统已更改。
SQL> select * from t for update;
已选择798945行。
统计信息
----------------------------------------------------------
476 recursive calls
812437 db block gets
884836 consistent gets
11122 physical reads
160903012 redo size
73057198 bytes sent via SQL*Net to client
586267 bytes received via SQL*Net from client
53264 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
798945 rows processed
SQL> alter system flush buffer_cache;
系统已更改。
SQL> desc t;
名称 是否为空? 类型
----------------------------------------- -------- ---------------------------
OWNER VARCHAR2(30)
OBJECT_NAME VARCHAR2(128)
SUBOBJECT_NAME VARCHAR2(30)
OBJECT_ID NUMBER
DATA_OBJECT_ID NUMBER
OBJECT_TYPE VARCHAR2(19)
CREATED DATE
LAST_DDL_TIME DATE
TIMESTAMP VARCHAR2(19)
STATUS VARCHAR2(7)
TEMPORARY VARCHAR2(1)
GENERATED VARCHAR2(1)
SECONDARY VARCHAR2(1)
SQL> update t set owner='a';
已更新798945行。
统计信息
----------------------------------------------------------
4564 recursive calls
7008787 db block gets
1123165 consistent gets
13434 physical reads
555747124 redo size
683 bytes sent via SQL*Net to client
558 bytes received via SQL*Net from client
4 SQL*Net roundtrips to/from client
16 sorts (memory)
0 sorts (disk)
798945 rows processed
SQL> select * from t;
已选择798945行。
统计信息
----------------------------------------------------------
1 recursive calls
0 db block gets
63677 consistent gets
0 physical reads
0 redo size
82886810 bytes sent via SQL*Net to client
586267 bytes received via SQL*Net from client
53264 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
798945 rows processed
可以理解 为:
consistent gets : 是由查询语句产生的,不管所查的数据是否需要构造前镜像,都要算进去
db block gets: 是由update,delete,select for update 产生的
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29990276/viewspace-1456970/
,如需转载,请注明出处,否则将追究法律责任。