ITPub博客

首页 > 数据库 > Oracle > ORACLE回滚段(1)

ORACLE回滚段(1)

原创 Oracle 作者:jss001 时间:2009-02-21 20:12:15 0 删除 编辑
创建回滚段
  语法:

  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;

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

  ROLLBACK_SEGMENT=(rbs01,rbs02)

修改回滚段的存储参数
  可以使用ALTER ROLLBACK SEGMENT命令修改回滚段的存储参数(包括OPTIMAL,MAXEXTENTS)。

  语法:

  ALTER ROLLBACK SEGMENT rollback_segment

  [STORAGE ([NEXT integer[K|M]]

       [MINEXTENTS integer]

       [MAXEXTENTS {integer|UNLIMITED}]

       [OPTIMAL {integer[K|M]|NULL}]) ]

  例:

  ALTER ROLLBACK SEGMENT rbs01 STORAGE (MAXEXTENTS 1000);

回收回滚段的空间
  如果指定了回滚段的OPTIMAL参数,ORACLE将自动回收回滚段到OPTIMAL指定的位置。用户也可以手动回收回滚段的空间。

  语法:

  ALTER ROLLBACK SEGMENT rollback_segment SHRINK [TO integer [K|M]];

  说明:

   如果不指明TO integer的数值,ORACLE将试图回收到OPTIMAL的位置。

  例:

  ALTER ROLLBACK SEGMENT rbs01 SHRINK TO 2M;

使回滚段离线
  为了达到以下两个目的将要回滚段离线:

  1.阻止新的事务使用该回滚段;

  2.该回滚段必须删除。

  语法:

   ALTER ROLLBACK SEGMENT rollback_segment OFFLINE;

  例:

   ALTER ROLLBACK SEGMENT rbs01 OFFLINE;

  说明:

   如果有事务正在使用该回滚段,运行该命令后,回滚段的状态将是PENDING OFFLINE。事务结束后,状态将改为OFFLINE,可以通过V$ROLLSTAT查询回滚段的状态。

删除回滚段
  当回滚段不再需要或要重建以改变INITIAL,NEXT或MINEXTENTS参数时,可以将其删除。要删除回滚段,不许使该回滚段离线。

语法:

  DROP ROLLBACK SEGMENT rollback_segment;

例:

  DROP ROLLBACK SEGMENT rbs01;
[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/18921899/viewspace-1017693/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: ORACLE DSI
下一篇: ORACLE回滚段(2)
请登录后发表评论 登录
全部评论
  • 博文量
    306
  • 访问量
    871815