撤销表空间的相关操作,初始化、修改、以及查询

撤销表空间

撤销表空间用于存放撤销信息,当执行了DML操作,即insert、update、delete时,oracle会将这些旧数据写入UNDO段中,而undo段是存在于undo表空间中。

撤销表的作用

undo表空间中的段也称为撤销段或是undo段,撤销段中存放的数据是“撤销信息”

  1. 读写一致
    oracle只会给用户提供被提交的数据。例如执行update emp set sal=5000 where empno=7788 语句时,旧的数据会被存放在undo段中,而新的数据会被存放在emp段中。假如此时该数据尚未提交,然后执行select sal from emp where empno=7788语句时,查询出来的不是5500,而是从撤销段中获取的旧的数据
  2. 可以回滚事务
    当执行updae操作时,旧的数据会保存在undo段中,新的数据会存在emp段中,如果提交事务失败,oracle会把undo段中的数据全部回写到原表的数据段中
  3. 闪回操作
    oracle11g新增强大的闪回操作,很多闪回技术都是通过undo技术实现的,例如闪回表、闪回事务查询、闪回版本查询等

撤销表空间的初始化参数

oracle初始化时会指定撤销表空间的某些参数

  1. undo_tablespace
    该参数指定使用哪个撤销表空间,在使用自动undo管理模式时,需要用该参数指定
  2. undo_management
    该参数初始化undo数据的管理模式,如果为auto,则为自动管理模式,如果为manual,则为回滚段管理模式
    注意如果没有指定undo_tablespace,会自动选择第一个undo表空间存放undo 数据,如果没有可用的undo表空间,oralce会使用system的回滚段存放undo数据,并在alter文件中记载警告。最好不要这样
  3. undo_retention
    该参数用于控制undo数据的最大保留时间,默认为900秒。
    如果想知道undo表空间的参数,可以通过show parameter命令查询

撤销表空间的基本操作

  1. 创建undo表空间
    例如创建一个撤销表空间,并指定数据文件大小为100MB,代码如下
create undo tablespace undo_tbs_1
datafile 'D:\oralcefiles\oralcedata\undotbs1.dbf'
size 100m;

注意 在创建表空间时,需要注意以下两个方面:

  1. undo表空间的数据文件的大小由dml操作可能产生的最大数据量来确定,通常文件大小在1G左右
  2. undo的表空间只存发撤数据,所以不要在undo表空间内建议任务数据对象(如表、索引)
  3. 修改undo表空间
    向表空间添加一个新的数据文件,指定文件大小2GB。
alter tablespace undo_tbs_1
add datafile 'D:\oralcefiles\oracledata\undotbs_add.dbf'
size 2g;
  1. 切换undo表空间
alter system set undo_tablespace=undo_tbs_1
  1. 删除undo表空间
    删除undo表空间时,先切换表空间,再删除
alter system set undo_tablespace=undotbs1
drop tablespace undo_tbs_1
  1. 查询表空间信息
    1. 当前使用undo表空间
    show parameter undo_tablespace;
    
    1. 查询所有undo表空间
    select tablespace_name from dba_tablespace where contents='undo'
    
    1. 显示活动事务信息
      执行DML操作时,oracle会把旧的数据放到undo段中,如果要显示会话信息,可以使用v$ session;如果要显示事务的详细信息,则可以使用v$ transaction
    select name,status from v$transaction
    
    1. 显示undo区的信息,显示段名字,编号,大小,状态(active活跃,expired空闲)
    selct segment_name,extent_id,bytes,status from dba_undo_extents where segment_name='_syssmu3_991555123$';
    

猜你喜欢

转载自blog.csdn.net/weixin_42620104/article/details/106986966
今日推荐