create table A1
(
ID INTEGER
)
tablespace TEST_DATA
pctfree 10
pctused 40
initrans 1
maxtrans 255
storage
(
initial 1
next 1
minextents 1
maxextents unlimited
pctincrease 0
);
INITRANS: 预先决定每个块头需要拥有的ITL条目,比如,INITRANS值设定为10,则为10个同时进行的事务提供空间。
MAXTRANS:决定最多允许的ITL条目数。若MAXTRANS值设定为50,则最多允许50个同时事务。MAXTRANS的缺省值是255,Oracle 10g开始MAXTRANS定位255.
即,即便指定了MAXTRANS的值,Oracle也会无视这些值,一直使用255.
SQL> create table A2
(
ID INTEGER
)
tablespace TEST_DATA
pctfree 10
pctused 40
initrans 100
maxtrans 999
storage
(
initial 1
next 1
minextents 1
maxextents unlimited
pctincrease 0
); 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
maxtrans 999
*
ERROR at line 9:
ORA-02209: invalid MAXTRANS option value
提示maxtrans 999不正确,
SQL> create table A2
(
ID INTEGER
)
tablespace TEST_DATA
pctfree 10
pctused 40
initrans 100
maxtrans 256
storage
(
initial 1
next 1
minextents 1
maxextents unlimited
pctincrease 0
); 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
maxtrans 256
*
ERROR at line 9:
ORA-02209: invalid MAXTRANS option value
经测试maxtrans 不能超过255
SQL> create table A2
(
ID INTEGER
)
tablespace TEST_DATA
pctfree 10
pctused 40
initrans 100
maxtrans 200
storage
(
initial 1
next 1
minextents 1
maxextents unlimited
pctincrease 0
); 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Table created.
SQL> select owner,table_name,INI_TRANS,MAX_TRANS from dba_tables where owner='TEST' and table_name='A2';
OWNER TABLE_NAME INI_TRANS MAX_TRANS
------------------------------ ------------------------------ ---------- ----------
TEST A2 100 255
当MAXTRANS的值不是255事,Oracle会无视这些值,一直使用255.
Oracle INITRANS和MAXTRANS
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
pctfree,pctused,initrans,maxtrans(原创)
pctfree 当一个块的使用空间达到100-pctfree值时,这个块从自由列表脱离。比如pctfree为10,那么当这个块使用90%的时候将会脱
pctfree pctused initrans maxtrans oracle