源码 | 书库 | 模板 | 特效 | 广告 | 素材 | 工具 | 必备 | ALEXA | 字体
会员投稿 投稿指南 RSS订阅
您当前的位置是:主页>网络编程>Oracle教程>

oracle10g系统管理之存储参数

www.jz123.cn  2009-11-22   来源:   中国建站    责任编辑(袁袁)    我要投递新闻

  1. INITIAL

  对于字典管理表空间来说,INITIAL用于指定段所分配的第一个区的尺寸。对于本地管理表空间来说,如果MINEXTENTS等于1,数据库会使用INITIAL和区尺寸确定段的初始尺寸。假定本地管理表空间的区尺寸为5M,如果INITIAl为1M,那么会分配一个5M的区。如果INITIAL为7M,则分配两个5M的区。INITIAL只能在建立对象时设置,不能使用ALTER语句进行修改。

  CREATE TABLE t1(cola INT) TABLESPACE user01

  STORAGE(INITIAL 500k);

  说明:使用user01表空间,假定user01创建时使用UNIFORM选项,并且区尺寸为128K.则t1表的段初始尺寸为500K。

  2. NEXT

  对于本地管理表空间来说,因为数据库可以自动管理区,所以该参数没有太大意义。对于字典管理表空间来说,NEXT用于指定为段所分配的第二个区的尺寸。

  3. PCTINCREASE

  对于本地管理表空间来说,因为数据库可以自动管理区,所以该参数没有太大意义。对于字典管理表空间来说,该参数可以指定从第三个区开始,每个区比前一个区所增长的百分比。

  4. MINEXTENTS

  对于本地管理表空间来说,因为数据库可以自动管理区,所以该参数没有太大意义。对于字典管理表空间来说,MINEXTENTS用于指定为段所分配的初始区个数。

  5. MAXEXTENTS

  对于本地管理表空间来说,因为数据库可以自动管理区,所以该参数没有太大意义。对于字典管理表空间来说,MINEXTENTS用于指定段可包含的最大区个数。

  6. FREELIST GROUPS

  FREELIST GROUPS用于指定对象的空闲列表组个数,每个空闲列表组会占用一个数据块。Oracle建议为Oracle Real Application Cluster的每个例程指定一个空闲列表组。需要注意,FREELIST GROUPS只能在段级指定。

  7. FREELISTS

  FREELISTS用于指定每个空闲列表组上的空闲列表个数,空闲列表用于维护可插入数据的数据块。需要注意,FREELISTS只能在段级指定。

  8. 假定建立字典管理表空间user02时,指定默认存储参数INITIAL和NEXT均为10K,PCTINCREASE为50.下面以建立表t2为例,说明在字典管理表空间上这些存储参数的作用。

  CREATE TABLE t2(cola int) TABLESPACE user02

  STORAGE(NEXT 20K MINEXTENTS 4);

  执行以上语句后,Oracle会建立表T1,并且为其分配尺寸为110K的表段t2。因为MINEXTENTS为4,所以段T1包含四个区;因为建表时未指定INITIAL,所以第一个区会使用表空间的默认存储参数:10K。第二个区区20K,第三区:30K,第四区:50K。

  9. 显示已分配区

  建立数据对象时,Oracle会为数据对象分配相应的段。段是由一个或多个区组成的,并且一个区只能存放在一个数据文件上,而同一个段的不同区可以放在不同数据文件上。通过查询数据字典视图dba_extents,可以取得已分配区的详细信息。

  SELECT extent_id,file_id,block_id,bytes

  FROM dba_extents

  WHERE owner=’SYS’ AND segment_name=’T1’;

  10. 显示空闲区

  当在表空间上建立数据对象时,Oracle会在表空间的剩余空间中位相应段分配空间。当段不足以容纳更多数据时,Oracle会通过分配去来扩展段。随着时间的推移,将导致表空间的剩余空间越来越少。

  SELECT sum(bytes)FROM dba_free_space

  WHERE tablespace_name=’USER01’;

上一篇:oracle10g系统管理之段 下一篇:Oracle 10g 归档日志(Archive Log )

评论总数:0 [ 查看全部 ] 网友评论


关于我们隐私版权广告服务友情链接联系我们网站地图