SQL> select * from t_game_detail;已选择245106行。已用时间: 00: 00: 14.01Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=12765 Card=201615 By
tes=19959885) 1 0 PARTITION RANGE (ALL)
2 1 TABLE ACCESS (FULL) OF 'T_GAME_DETAIL' (Cost=12765 Card=
201615 Bytes=19959885)Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
101144 consistent gets
84725 physical reads
0 redo size
21442615 bytes sent via SQL*Net to client
180243 bytes received via SQL*Net from client
16342 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
245106 rows processedSQL> select * from t_game_detail where part_id = 11;已选择245127行。已用时间: 00: 00: 07.09Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=996 Card=201615 Byte
s=19959885) 1 0 TABLE ACCESS (FULL) OF 'T_GAME_DETAIL' (Cost=996 Card=2016
15 Bytes=19959885)Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
23545 consistent gets
6772 physical reads
0 redo size
21444394 bytes sent via SQL*Net to client
180254 bytes received via SQL*Net from client
16343 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
245127 rows processed
上面两个查询结果记录行数是差不多了, 为什么第一个查询花了14秒,而且84725 physical reads 这么大,而第二个查询加了 part_id = 11,才花了7秒,而且6772 physical reads 小多了。
在plsql developer上执行select * from t_game_detail也花好多时间, 用select * from t查询其表很快就执行完了。为什么在查询t_game_detail会慢那么多呢,以前很快的,这两天突然变慢了,也没什么特别的操作? 我用的 oracle 9i,在windows 2003系统上。
哪位大侠帮忙指教一下?
----------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=12765 Card=201615 By
tes=19959885) 1 0 PARTITION RANGE (ALL)
2 1 TABLE ACCESS (FULL) OF 'T_GAME_DETAIL' (Cost=12765 Card=
201615 Bytes=19959885)Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
101144 consistent gets
84725 physical reads
0 redo size
21442615 bytes sent via SQL*Net to client
180243 bytes received via SQL*Net from client
16342 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
245106 rows processedSQL> select * from t_game_detail where part_id = 11;已选择245127行。已用时间: 00: 00: 07.09Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=996 Card=201615 Byte
s=19959885) 1 0 TABLE ACCESS (FULL) OF 'T_GAME_DETAIL' (Cost=996 Card=2016
15 Bytes=19959885)Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
23545 consistent gets
6772 physical reads
0 redo size
21444394 bytes sent via SQL*Net to client
180254 bytes received via SQL*Net from client
16343 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
245127 rows processed
上面两个查询结果记录行数是差不多了, 为什么第一个查询花了14秒,而且84725 physical reads 这么大,而第二个查询加了 part_id = 11,才花了7秒,而且6772 physical reads 小多了。
在plsql developer上执行select * from t_game_detail也花好多时间, 用select * from t查询其表很快就执行完了。为什么在查询t_game_detail会慢那么多呢,以前很快的,这两天突然变慢了,也没什么特别的操作? 我用的 oracle 9i,在windows 2003系统上。
哪位大侠帮忙指教一下?
http://blog.csdn.net/tianlesoftware/archive/2009/10/22/4707900.aspx
条件where part_id = 9; 来查询第9分区时也是很慢。 查第11分区或者其他的分区很快。
就是查第9分区时候花了最多时间,几乎和 查所有分区所用的时间一样,是不是第9分区有问题?
所以感觉应该不是高水位的问题。