oracle数据滚回6,Oracle数据库回滚段的应用

Oracle数据库的回滚段用于对数据库修正时, 保留原有的数据, 以便稍后能够穿越利用ROLLBACK来还原到修正前的数据; 另外, 回滚段可感受数据库中的所有历程供给读统一性. 本文我们主要Oracle数据库的回滚段方面的知识,接下来就让我们来一起了解一下这部分内容吧。

回滚段的种类

回滚段可分为系统回滚段和非系统回滚段, 其中非系统回滚段又分为PUBLIC回滚段和PRIVATE回滚段.

系统回滚段用于处理波及系统的CATALOG的事物(例如大多数的DDL), 它位于SYSTEM表空间, 由于只有SYSTEM表空间能够随时坚持可用, 因而, 不要把SYSTEM回滚段放在其他的表空间中.

分寸1: 系统回滚段应放在SYSTEM表空间中, 并且该当永远坚持ONLINE事态.

PUBLIC回滚段对于数据库的所有实例(INSTANCE)都是可用的, 除非将其显式设置为OFFLINE.

PRIVATE回滚段是指对于数据库的某个实例是私有的, 为了利用PRIVATE回滚段, 某个实例该当在其INITsid.ORA的ROLLBACK_SEGMENTS中标明所有要利用的PRIVATE回滚段, 或穿越利用ALTER ROLLBACK SEGMENT XXX ONLINE来利用某一个回滚段.

提倡1: 在单实例系统中,提倡将所有回滚段设为PUBLIC.

提倡2: 在多实例系统中(如OPS), 提倡将每个实例的PRIVATE回滚段放置到拜会比拟快的本地装备上.

回滚段的数量、大小及存储参数

准确的回滚段的数量及大小的计算波及许多方面: 利用的种类(OLTP/OLAP/BATCH), 同时举行的事物的数量, DML语句的种类, 每个事物处理的数据量等等.

分寸2: OLTP系统应利用小但较多的回滚段, OLAP系统/批处理系统应利用少量的大回滚段

提倡3: OLTP/OLAP混杂型系统中, 应专程设置一个或几个大的回滚段, 平时设置为OFFLINE, 利用时穿越利用SET TRANSACTION USE ROLLBACK SEGMENT XXX来利用它. 这些回滚段应利用OPTIMAL参数,以便在不利用时,能够SHRINK到一个较小的尺寸。

提倡4: 在很难计算准确的数量、大小时,可用"偏大不偏小"的分寸。

分寸3: 所有的回滚段的INITIAL/NEXT参数应设为雷同, 只有提倡3中提到的大回滚段例外.

分寸4: 不要将回滚段的MAXEXTENTS设为UNLIMITED, 回滚段所在表空间也不要设为AUTOEXTEND

措施, 否则将会使得由于某个不正常的事务导致全副数据库处于失控事态.

回滚段的维护及查询

1.创立回滚段

CREATE ROLLBACK SEGMENT RB01

TABLESPACE RBS1

STORAGE (

INITIAL 100K

NEXT 100K

MINEXTENTS 20

MAXEXTENTS 100

OPTIMAL 2000K );

2. 改动ONLINE/OFFLINE事态

ALTER ROLLBACK SEGMENT RB01 ONLINE;

ALTER ROLLBACK SEGMENT RB01 OFFLINE;

3.改动OPTIMAL参数

ALTER ROLLBACK SEGMENT RB01

STORAGE ( MAXEXTENTS 200

OPTIMAL 2048K );

4.缩小回滚段

ALTER ROLLBACK SEGMENT RB01 SHRINK;

(有OPTIMAL参数时, 缩小到OPTIMAL值; 未曾OPTIMAL参数时, 缩小到MINEXTENTS所对应的尺寸)

ALTER ROLLBACK SEGMENT RB01 SHRINK TO 2048K;

5.修正INITIAL/NEXT参数

提倡5: 依据分寸3, 修正NEXT时, 总该当同时修正INITIAL.

INITIAL参数无法直接修正, 只能先DROP, 然后再CREATE.

DROP ROLLBACK SEGMENT RB01;

CREATE ROLLBACK SEGMENT RB01

TABLESPACE RBS1

STORAGE ( INITIAL 100K

NEXT 100K

MINEXTENTS 20

MAXEXTENTS 121

OPTIMAL 2000K )

6.在事务中利用特定的回滚段

SET TRANSACTION USE ROLLBACK SEGMENT RB_LARGE1;

7.常用的有关回滚段的系统数据字典

DBA_ROLLBACK_SEGS (相干表:DBA_SEGMENTS)

V$ROLLNAME

V$ROLLSTAT

V$TRANSACTION (相干表: V$SESSION)

关于Oracle数据库回滚段的知识就介绍到这里,希望能够带给您一些收获!

【编辑推荐】

【责任编辑:赵鹏 TEL:(010)68476606】

点赞 0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值