• Oracle快速替换UNDO表空间方法


    Oracle快速替换UNDO表空间方法

                                               
    UNDO表空间不够用,有两种处理方法:
    1、扩大表空间大小;
    2、创建新的UNDO表空间,删除原来的。
    一、 初步操作
    确认UNDO表空间名称
    select name from v$tablespace;
    检查数据库UNDO表空间占用空间情况以及数据文件存放位置;
    select file_name,bytes/1024/1024 from dba_data_files where tablespace_name like 'UNDOTBS1';
    二、 扩大UNDO表空间
    alter   database  UNDOTBS1 datafile   '/opt/oracle/oradata/inms/undotbs02.dbf'   resize   4000M;
    三、 创建新的UNDO表空间,删除原来的
    1、创建新的UNDO表空间,并设置自动扩展参数;
    create undo tablespace undotbs2 datafile '/oradata/oradata/ddptest/UNDOTBS1.dbf' size    2 1000m reuse autoextend on next 800m maxsize unlimited;
    2、动态更改spfile配置文件;
    alter system set undo_tablespace=undotbs2 scope=both;
    3、删除原有的UNDO表空间;
    drop tablespace undotbs1 including contents;
    4、确认删除是否成功;
    select name from v$tablespace;
    5、确定$ORACLE_HOME/dbs/spfileoinms.ora内容是否发生变更:
    $more spfileoinms.ora
    *.undo_management='AUTO'
    *.undo_retention=10800
    *.undo_tablespace='UNDOTBS2'
    如果没有发生变更请执行如下语句:
    SQL> create pfile from spfile;
    File created.
    6、删除原UNDO表空间的数据文件,其文件名为步骤中执行的结果。
    #rm $ORACLE_BASE/oradata/$ORACLE_SID/undotbs01.dbf
    四、 结论
    根据实际情况,采用扩大undo表空间的方式只能支撑一段时间。运行一段时间之后,undo表空间数据文件终会达到上限。因此,采用第二中方案进行处理。可以使用一下脚本,交替替换undotbs1和undotbs2表空间的方式,可以快速解决问题。
    (一) 脚本1:用undotbs1替换undotbs2表空间
    create undo tablespace undotbs1 datafile '/u01/oracle/oradata/orcl/UNDOTBS1.dbf' size 512m reuse autoextend on next 512m maxsize unlimited;
     
    alter system set undo_tablespace=undotbs1 scope=both;
     
    drop tablespace undotbs2 including contents;
     
    rm '/u01/oracle/oradata/orcl/UNDOTBS2.dbf'
    (二) 脚本2:用undotbs2替换undotbs1表空间
    create undo tablespace undotbs2 datafile '/u01/oracle/oradata/orcl/UNDOTBS2.dbf' size 512m reuse autoextend on next 512m maxsize unlimited;
     
    alter system set undo_tablespace=undotbs2 scope=both;
     
    drop tablespace undotbs1 including contents;
     
    rm '/u01/oracle/oradata/orcl/UNDOTBS1.dbf'

  • 相关阅读:
    IIS-Service Unavailable
    复制datatable,把类型变为字符串
    泛类型的使用
    线程间操作无效: 从不是创建控件“button1”的线程访问它。
    .dialog打开时执行方法
    更新系统时间
    复制对象
    如何安装windows服务
    ObjectARX创建文字
    设置cad进度条的arx代码
  • 原文地址:https://www.cnblogs.com/yaoyangding/p/12578988.html
Copyright © 2020-2023  润新知