WEB开发网
开发学院数据库Oracle 为Oracle 闪回特性设置撤消表空间(一) 阅读

为Oracle 闪回特性设置撤消表空间(一)

 2009-05-22 13:14:51 来源:WEB开发网   
核心提示: 2. 重启数据库实例,使参数设置有效;3. 想要调整撤消表空间到合适大小,为Oracle 闪回特性设置撤消表空间(一)(3),建议实际观测系统的工作负载,然后使用以下的代码让Oracle确定UNDO表空间的合适大小: SQL> SET SERVEROUTPUT on

2. 重启数据库实例,使参数设置有效;

3. 想要调整撤消表空间到合适大小,建议实际观测系统的工作负载,然后使用以下的代码让Oracle确定UNDO表空间的合适大小:

      SQL> SET SERVEROUTPUT on
  SQL> DECLARE

  utbsiz_in_MB NUMBER;

  BEGIN

  utbsiz_in_MB := DBMS_UNDO_ADV.RBU_MIGRATION;

  dbms_output.put_line('undo size : '||utbsiz_in_MB||'MB');

  end;

  /

  undo size : 740MB

  PL/SQL procedure successfully completed.

4. 如前文所述创建UNDO TABLESPACE。要记住,用户对数据库数据所作的更新越多,那么为回闪操作设置的撤消表空间所需的空间就越大。如果你按照前文所述创建了该表空间(启用AUTOEXTEND设置),那么Oracle就会管控这个表空间的大小,并使撤消数据的保存时间长于最长的查询持续时间及UNDO_RETENTION参数指定的时间(下面会谈到)。

5. 设置以下初始化参数。同样的,如果你用的是init.ora文件,则要确保在该文件中编辑并存储这些参数,并使用ALTER SYSTEM命令对这些参数进行设置。如果你使用的是spfile,那么在设置这些参数的时候,要指定SCOPE=spfile,这样通过重启数据库就能够使参数设置生效。

a) UNDO_MANAGEMENT:用于设置数据库实例的撤消管理模式

ALTER SYSTEM SET undo_management=auto SCOPE=spfile

b) UNDO_TABLESPACE:用于设置为AUM准备的撤消表空间

ALTER SYSTEM SET undo_tablespace=undotbs01 SCOPE=spfile

c) UNDO_RETENTION:用于设置撤消数据保存的保存时间(以秒为单位)

ALTER SYSTEM SET undo_retention=900 SCOPE=spfile

在设置这些参数时要记住,UNDO_MANAGEMENT是一个静态参数(无法设置为动态),而且需要重启数据库实例才能使设置生效。因此,建议只是修改init.ora文件或spfile,然后重启数据库。

如果你完成了每一个步骤,那么你的数据库实例就已经启用了自动撤消管理,并拥有一个撤消表空间。可见,切换到自动撤消管理以及创建撤消表空间并不是什么难事,难的部分是它的实际使用过程。如果你设置的UNDO_RETENTION时长太短,或者UNDO表空间的AUTOEXTEND没有启用,又会出现哪些问题呢?这些将在本文的第二部分进行讨论。

上一页  1 2 3 

Tags:Oracle 特性 设置

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接