Oracle回滚段的概念,用法和规划及问题的解决

http://tech.ddvip.com   2006年08月05日    社区交流

本文详细介绍Oracle回滚段的概念,用法和规划及问题的解决

  回滚段的回收和OPTIMAL参数

  OPTIMAL参数指明回滚段空闲时收缩到的位置,指明回滚段的OPTIMAL参数可以减少回滚段空间的浪费。

  创建回滚段

  语法:

    CREATE [PUBLIC] ROLLBACK SEGMENT rollback_segment
     [TABLESPACE tablespace]
     [STORAGE ([INITIAL integer[K|M]] [NEXT integer[K|M]]
           [MINEXTENTS integer]
           [MAXTENTS {integer|UNLIMITED}]
           [OPTIMAL {integer[K|M]|NULL}]) ]

  注:

  回滚段可以在创建时指明PRIVATE或PUBLIC,一旦创建将不能修改。

  MINEXTENTS 必须大于等于2

  PCTINCREASE必须是0

  OPTIMAL如果要指定,必须大于等于回滚段的初始大小(由MINEXTENTS指定)

  建议:

  一般情况下,INITIAL=NEXT

  设置OPTIMAL参数来节约空间的使用

  不要设置MAXEXTENTS为UNLIMITED

  回滚段应创建在一个特定的回滚段表空间内

  例:

    CREATE ROLLBACK SEGMENT rbs01
  TABLESPACE rbs
  STORAGE ( INITIAL 100K NEXT 100K MINEXTENTS 10
       MAXEXTENTS 500 OPTIMAL 1000K);

  使回滚段在线

  当回滚段创建后,回滚段是离线的,不能被数据库使用,为了使回滚段被事务利用,必须将回滚段在线。可以用以下命令使回滚段在线:

  ALTER ROLLBACK SEGMENT rollback_segment ONLINE;

  例:

  ALTER ROLLBACK SEGMENT rbs01 ONLINE;

  为了使回滚段在数据库启动时自动在线,可以在数据库的参数文件中列出回滚段的名字。例如在参数文件中加入以下一行:

责编:豆豆技术应用

正在加载评论...