[20191206]为什么oracle能建立最大object_id=4254950910.txt
--//昨天的测试,最大obj$.obj#=4254950910.不理解为什么,实际上oracle内部还有一些X$以及相关视图.
--//大于obj#=4254950911保留给这些内存表使用.
--//链接:http://blog.itpub.net/267265/viewspace-2666794/
SYS@book> @ ver1
PORT_STRING VERSION BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx 11.2.0.4.0 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
SYS@book> select * from (select * from v$fixed_table order by OBJECT_ID) where rownum<=10;
NAME OBJECT_ID TYPE TABLE_NUM
------------- ---------- ------ ----------
X$KQFTA 4294950912 TABLE 0
X$KQFVI 4294950913 TABLE 1
X$KQFDT 4294950914 TABLE 3
V$WAITSTAT 4294950915 VIEW 65537
V$ROWCACHE 4294950916 VIEW 65537
V$PROCESS 4294950917 VIEW 65537
V$BGPROCESS 4294950918 VIEW 65537
V$SESSION 4294950919 VIEW 65537
V$TRANSACTION 4294950920 VIEW 65537
V$LATCH 4294950921 VIEW 65537
10 rows selected.
--//这些对象的最小OBJECT_ID正好是4294950912.
--//2^32-1 = 4294967295
--//4294967295-4294950911 = 16384
--//故意保留16384为这些对象使用.
SYS@book> select count(*) from (select rownum+4294950911 from dual connect by level<=16384 minus select object_id from v$fixed_table );
COUNT(*)
----------
14322
SYS@book> select count(*) from v$fixed_table ;
COUNT(*)
----------
2062
--//14322+2062 = 16384,仅仅使用2062个.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-2667134/ ,如需转载,请注明出处,否则将追究法律责任。