Oracle数据库回滚段操作
1.新建undo表空间
SQL> create undo tablespace undotbs2 datafile 'E:\oracle\product\oradata\orcl\un
dotbs02.dbf' size 10M autoextend on next 10M maxsize 500M;
2.由于undo_tablespace是个动态参数,所以任何时候都可以set。
SQL> alter system set undo_tablespace='undotbs2' scope=both;
系统已更改。
3.查看原来的undo表空间中的undo segment是否都为offline
SQL> select tablespace_name,segment_name,status from dba_rollback_segs;
TABLESPACE_NAME SEGMENT_NAME STATUS
------------------------------ ------------------------------ ----------------
SYSTEM SYSTEM ONLINE
UNDOTBS1 _SYSSMU1$ OFFLINE
UNDOTBS1 _SYSSMU2$ OFFLINE
UNDOTBS1 _SYSSMU3$ OFFLINE
UNDOTBS1 _SYSSMU4$ OFFLINE
UNDOTBS1 _SYSSMU5$ OFFLINE
UNDOTBS1 _SYSSMU6$ OFFLINE
UNDOTBS1 _SYSSMU7$ OFFLINE
UNDOTBS1 _SYSSMU8$ OFFLINE
UNDOTBS1 _SYSSMU9$ OFFLINE
UNDOTBS1 _SYSSMU10$ OFFLINE
UNDOTBS2 _SYSSMU11$ ONLINE
UNDOTBS2 _SYSSMU12$ ONLINE
UNDOTBS2 _SYSSMU13$ ONLINE
UNDOTBS2 _SYSSMU14$ ONLINE
UNDOTBS2 _SYSSMU15$ ONLINE
UNDOTBS2 _SYSSMU16$ ONLINE
UNDOTBS2 _SYSSMU17$ ONLINE
UNDOTBS2 _SYSSMU18$ ONLINE
UNDOTBS2 _SYSSMU19$ ONLINE
TABLESPACE_NAME SEGMENT_NAME STATUS
------------------------------ ------------------------------ ----------------
UNDOTBS2 _SYSSMU20$ ONLINE
21 rows selected
原来undotbs1的undo_segment 都为offline,则可以删除undotbs1.
SQL> drop tablespace undotbs1 including contents and datafiles;
表空间已删除。
再次查看:
SQL> select tablespace_name,segment_name,status from dba_rollback_segs;
TABLESPACE_NAME SEGMENT_NAME STATUS
------------------------------ ------------------------------ ----------------
SYSTEM SYSTEM ONLINE
UNDOTBS2 _SYSSMU11$ ONLINE
UNDOTBS2 _SYSSMU12$ ONLINE
UNDOTBS2 _SYSSMU13$ ONLINE
UNDOTBS2 _SYSSMU14$ ONLINE
UNDOTBS2 _SYSSMU15$ ONLINE
UNDOTBS2 _SYSSMU16$ ONLINE
UNDOTBS2 _SYSSMU17$ ONLINE
UNDOTBS2 _SYSSMU18$ ONLINE
UNDOTBS2 _SYSSMU19$ ONLINE
UNDOTBS2 _SYSSMU20$ ONLINE
11 rows
SQL> show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- -----------------------
undo_management string AUTO
undo_retention integer 900
undo_tablespace string undotbs2
由于没有offline undotbs1,所以物理删除数据文件的时候报错:
E:\oracle\product\oradata\orcl>del undotbs01.dbf
E:\oracle\product\oradata\orcl\UNDOTBS01.DBF
另一个程序正在使用此文件,进程无法访问。
将oracle的服务关闭后,可以删除。
重新切换,这次先offline,再drop。
SQL> create undo tablespace undotbs1 datafile 'E:\oracle\product\oradata\orcl\undotbs01.dbf' size 10M autoextend on next 10M maxsize 500M;
Tablespace created
SQL> alter system set undo_tablespace='undotbs1' scope=both;
System altered
SQL> select tablespace_name,segment_name,status from dba_rollback_segs;
TABLESPACE_NAME SEGMENT_NAME STATUS
------------------------------ ------------------------------ ----------------
SYSTEM SYSTEM ONLINE
UNDOTBS1 _SYSSMU1$ ONLINE
UNDOTBS1 _SYSSMU2$ ONLINE
UNDOTBS1 _SYSSMU3$ ONLINE
UNDOTBS1 _SYSSMU4$ ONLINE
UNDOTBS1 _SYSSMU5$ ONLINE
UNDOTBS1 _SYSSMU6$ ONLINE
UNDOTBS1 _SYSSMU7$ ONLINE
UNDOTBS1 _SYSSMU8$ ONLINE
UNDOTBS1 _SYSSMU9$ ONLINE
UNDOTBS1 _SYSSMU10$ ONLINE
UNDOTBS2 _SYSSMU11$ OFFLINE
UNDOTBS2 _SYSSMU12$ OFFLINE
UNDOTBS2 _SYSSMU13$ OFFLINE
UNDOTBS2 _SYSSMU14$ OFFLINE
UNDOTBS2 _SYSSMU15$ OFFLINE
UNDOTBS2 _SYSSMU16$ OFFLINE
UNDOTBS2 _SYSSMU17$ OFFLINE
UNDOTBS2 _SYSSMU18$ OFFLINE
UNDOTBS2 _SYSSMU19$ OFFLINE
TABLESPACE_NAME SEGMENT_NAME STATUS
------------------------------ ------------------------------ ----------------
UNDOTBS2 _SYSSMU20$ OFFLINE
21 rows selected
SQL> alter tablespace undotbs2 offline;
Tablespace altered
SQL> drop tablespace undotbs2 including contents and datafiles;
Tablespace dropped
SQL> select tablespace_name,segment_name,status from dba_rollback_segs;
TABLESPACE_NAME SEGMENT_NAME STATUS
------------------------------ ------------------------------ ----------------
SYSTEM SYSTEM ONLINE
UNDOTBS1 _SYSSMU1$ ONLINE
UNDOTBS1 _SYSSMU2$ ONLINE
UNDOTBS1 _SYSSMU3$ ONLINE
UNDOTBS1 _SYSSMU4$ ONLINE
UNDOTBS1 _SYSSMU5$ ONLINE
UNDOTBS1 _SYSSMU6$ ONLINE
UNDOTBS1 _SYSSMU7$ ONLINE
UNDOTBS1 _SYSSMU8$ ONLINE
UNDOTBS1 _SYSSMU9$ ONLINE
UNDOTBS1 _SYSSMU10$ ONLINE
11 rows selected
SQL> show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string AUTO
undo_retention integer 900
undo_tablespace string undotbs1
Oracle数据库回滚段操作相关推荐
- oracle数据库回滚率高,oracle数据库回滚
线下测试数据误操作,回滚攻略--把数据捞出来,这个时间自己设置 --表名一定要是:xx_tbd日期 CREATE TABLE user_tbd0718 AS select * from user as ...
- ORACLE数据库回滚
ORACLE数据库回滚 打开回滚 开始回滚 打开回滚 alter table T_SYS_ATTACHMENT enable row movement; 开始回滚 flashback table T_ ...
- Oracle重建回滚段
今天在做数据迁移的时候发现磁盘空间完全被吃完,查看undo表空间竟然占了25G.这里记录重建undo表空间过程. 1.重建undo表空间undotbs2SQL> create undo tabl ...
- Oracle回滚当前循环,oracle查看回滚段
1.监控PGA的视图: v$sql_workarea_active.v$sql_workarea.v$sesstat.v$process.v$sysstat.v$sql_workarea_histog ...
- java oracle数据回滚,误操作ORACLE生产数据利用闪回查询备份恢复数据-java-51CTO博客...
生产环境中万一对生产数据进行了误操作,这个时候有没有什么技术能够进行紧急回滚? 一>备份没执行脱敏脚本之前的数据 select * from cr_dw as of timestamp to_t ...
- 深入解析oracle回滚段
深入解析oracle的回滚段 日前在整理数据库表空间的是否,发现最大的数据文件来自回滚段.回滚段文件undotbs1的数据文件已经达到23G. 希望清理这部分数据,但一时又无从下手.于是决定深入了解一 ...
- oracle回滚段创建,Oracle回滚段管理
Oracle回滚段管理 回滚段管理一直是ORACLE数据库管理的一个难题,本文通过实例介绍ORACLE回滚段的概念 回滚段概述 回滚段用于存放数据修改之前的值(包括数据修改之前的位置和值).回滚段的头 ...
- oracle 回滚空间查询,oracle回滚段和回滚表空间操作
1.查询回滚段信息:状态为ONLINE,当前UNDO表空间为undotbs1 SQL>select segment_name, owner, tablespace_name, status fr ...
- oracle数据库创建回滚,如何重建Oracle数据库的回滚段?
1.将数据关闭 svrmgrl >Shutdown abort 2.修改初始化参数文件 $ vi $ORACLE_HOME/dbs/init.ora添加以下参数 rollback_segment ...
最新文章
- Entity Framework中的Migration问题
- HTML的标签描述14
- 【面试必备】通俗易懂的XGBoost、Transformer、BERT、水波网络原理解析 | 学习小组...
- 关于MySQL出现锁等待lock wait timeout exceeded; try restarting transaction 的解决方案
- Android GestureDetector方法详解
- 鸿蒙os首批适配机型,鸿蒙OS正式版首批名单曝光,适配速度让人意外,8款机型恭喜了...
- 推荐系统中如何做多目标优化
- 架构分享--微博架构
- 访问日志不记录静态文件、访问日志切割、静态元素过期时间
- [Swift通天遁地]二、表格表单-(14)实时调整表单元素的激活和失效
- Linux 使用 shell 脚本处理字符串
- 吴恩达神经网络和深度学习-学习笔记-5-参数和超参数
- 远程注入利用远程线程直接注入
- 解决虎牙、斗鱼网页端P2P上传&增强虎牙、斗鱼网页端功能!
- 使用花生壳将内网服务发布到外网
- 在ubuntu18.04上安装以及运行Faster-lio
- 数据上链——区块链相关概念
- KSQL:Apache Kafka的流式SQL
- 996工作制该取消吗?
- 【技术邻】基于有限元方法的整车风噪仿真分析