x$ksmsp 10g ,11g的chunk差别问题

[复制链接]
查看11 | 回复3 | 2013-11-27 13:33:41 | 显示全部楼层 |阅读模式
在10g做如下操作,chunk数就增长了。预期应该是增长。
SQL> select count(*) from x$ksmsp;
COUNT(*)
----------
56411
SQL> select count(*) from dba_objects;
COUNT(*)
----------
15991
SQL> select count(*) from x$ksmsp;
COUNT(*)
----------
59858
在11g做如下操作,chunk数不升反降
SQL> SELECT COUNT(*) FROM X$KSMSP;
COUNT(*)
----------
45024
SQL> CREATE TABLE TT TABLESPACE USERS AS SELECT * FROM DBA_OBJECTS;
Table created.
SQL> SELECT COUNT(*) FROM DBA_OBJECTS;
COUNT(*)
----------
68730
SQL> SELECT COUNT(*) FROM X$KSMSP;
COUNT(*)
----------
44925
求教高手解答。

回复

使用道具 举报

千问 | 2013-11-27 13:33:41 | 显示全部楼层
多做几次。唯必都是10G涨、11G降吧。

回复

使用道具 举报

千问 | 2013-11-27 13:33:41 | 显示全部楼层
vage 发表于 2012-11-13 23:57
多做几次。唯必都是10G涨、11G降吧。

我在我的电脑上用虚拟机分别跑了好多次,都是同样的效果。有些疑惑。
回复

使用道具 举报

千问 | 2013-11-27 13:33:41 | 显示全部楼层
11G中,并不是只有下降,也有增长。我进行了两次硬解析,第一次降,第二次涨。
而10G中,也并不是只有涨。
硬解析时,会分配新的Chunk,这个分配工作,会附带Flush操作。Flush的次数,可以从X$KGHLU. KGHLUFSH中看到。
这个Flush是干什么的呢?它全部的作用不太清楚,有一条作用,就是在搜索FreeList时顺便合并碎片。
我曾经用这个命令观察小于200字节的Chunk:
select KSMCHSIZ, sum(ksmchsiz)/1024/1024,count(*) from x$ksmsp where KSMCHSIZ CONN ORACONN/ORACLE
ERROR:
ORA-01017: invalid username/password; logon denied
Warning: You are no longer connected to ORACLE.
test 2:SQL> conn oraconn/oracle
Connected.
test 3:SQL> conn oraConn/oracle
Connected.
test 4:SQL> conn oraConn/Oracle
ERROR:
ORA-01017: invalid username/password; logon denied

Warning: You are no longer connected to ORACLE.
不知道为什么在11g里面要这样?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行