oracle默认多长时间回滚

oracle默认多长时间回滚,第1张

oracle默认1440分钟回滚。oracle默认的回滚时间是24小时也就是1440分钟。Oracle不仅提供性能卓越且具有杰出成本效益的数据库和先进的多模型融合数据库管理系统,还提供内存中数据库、NoSQL数据库和MySQL数据库。

是谁 偷偷的 用了那么多空间呢(本来有几十个G的Free磁盘空间的)?

检查数据库表空间占用空间情况:

SQL>select tablespace_name sum(bytes)/ / / GB

from dba_data_files group by tablespace_name

union all

select tablespace_name sum(bytes)/ / / GB

from dba_temp_files group by tablespace_name order by GB

TABLESPACE_NAME                        GB

USERS                         

UNDOTBS                        

SYSTEM                        

SYSAUX                        

WAPCM_TS_VISIT_DETAIL           

HY_DS_DEFAULT                          

MINT_TS_DEFAULT                        

MMS_TS_DATA                        

MMS_IDX_SJH                            

MMS_TS_DEFAULT                         

IVRCN_TS_DATA                          

TABLESPACE_NAME                        GB

MMS_TS_DATA                            

CM_TS_DEFAULT                          

TEMP                          

UNDOTBS                       

rows selected

不幸的发现 UNDO表空间已经扩展至 G 而TEMP表空间也扩展至 G 这 个表空间加起来占用了 G的磁盘空间 导致了空间不足

显然曾经有大事务占用了大量的UNDO表空间和Temp表空间 Oracle的AUM(Auto Undo Management)从出生以来就经常出现只扩展 不收缩(shrink)的情况(通常我们可以设置足够的UNDO表空间大小 然后取消其自动扩展属性)

现在我们可以采用如下步骤回收UNDO空间:

确认文件

SQL>select file_name bytes/ / from dba_data_files

where tablespace_name like UNDOTBS

FILE_NAME

BYTES/ /

+ORADG/d *** y/datafile/undotbs

检查UNDO Segment状态

SQL>select usn xacts rssize/ / / hwmsize/ / / shrinks

from v$rollstat order by rssize

USN      XACTS RSSIZE/ / / HWMSIZE/ / /     SHRINKS

                                            

                                            

                                              

                                            

                                            

                                            

                                            

                                            

                                            

                                            

                                              

rows selected

创建新的UNDO表空间

SQL>create undo tablespace undotbs

Tablespace created

切换UNDO表空间为新的UNDO表空间

SQL>alter system set undo_tablespace=undotbs scope=both

System altered

此处使用spfile需要注意 以前曾经记录过这样一个案例:Oracle诊断案例 Spfile案例一则

等待原UNDO表空间所有UNDO SEGMENT OFFLINE

SQL>select usn xacts status rssize/ / / hwmsize/ / / shrinks

from v$rollstat order by rssize

USN      XACTS STATUS          RSSIZE/ / / HWMSIZE/ / /     SHRINKS

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

USN      XACTS STATUS          RSSIZE/ / / HWMSIZE/ / /     SHRINKS

          PENDING OFFLINE                                    

rows selected

再看:

: : SQL>/

USN      XACTS STATUS          RSSIZE/ / / HWMSIZE/ / /     SHRINKS

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

          ONLINE                                           

rows selected

Elapsed: : :

删除原UNDO表空间

: : SQL>drop tablespace undotbs including contents

Tablespace dropped

Elapsed: : :

检查空间情况

由于我使用的ASM管理 可以使用 gR 提供的信工具a *** cmd来察看空间占用情况

[oracle@d *** y ~]$ export ORACLE_SID=+ASM

[oracle@d *** y ~]$ a *** cmd

ASMCMD>du

Used_MB      Mirror_used_MB

              

ASMCMD>exit

lishixinzhi/Article/program/Oracle/201311/18992

比如说你的事务未提交进程意外终止(

掉线

啊,点击

叉叉

退出连接啊)未提交的数据全部

回滚

。或者在你的事务提交过程中,数据违反约束条件,事务内部出现错误被终止,则该事务中所有 *** 作也被自动回滚。还有其他一些情况,这两个是主要的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6692422.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存