前言
一、确认对应实例的undo表空间
show parameter undo
二、确认对应实例undo的文件位置
select file_name, bytes / 1024 / 1024 / 1024 from dba_data_files where tablespace_name like 'undotbs%';
三、确认回滚段使用情况
#如果为空则证明该表空间可以被删除,否则要放其他时间处理尤其生产环境下。
select s.username, u.name from gv$transaction t, gv$rollstat r, v$rollname u, gv$session s where s.taddr = t.addr and t.xidusn = r.usn and r.usn = u.usn order by s.username;
四、检查undo segment状态
select usn, xacts, status, rssize / 1024 / 1024, hwmsize / 1024 / 1024, shrinks from v$rollstat order by rssize;
五、创建新的undo表空间并进行切换
sql> create pfile='/home/oracle/t1.txt' from spfile; ファイルが作成されました。 sql> sql> sql> create undo tablespace undotbs02 datafile '+data' size 10240m autoextend on next 10m; 表領域が作成されました。 sql> sql> create undo tablespace undotbs01 datafile '+data' size 10240m autoextend on next 10m; 表領域が作成されました。 sql> sql> sql> alter system set undo_tablespace=undotbs02 sid='cxldb2' scope=both; システムが変更されました。 sql> sql> sql> show parameter undo name type value ------------------------------------ ----------- ------------------------------ temp_undo_enabled boolean false undo_management string auto undo_retention integer 10800 undo_tablespace string undotbs02 sql> ##inst_id=1 sql> sql> show parameter undo name type value ------------------------------------ ----------- ------------------------------ temp_undo_enabled boolean false undo_management string auto undo_retention integer 10800 undo_tablespace string undotbs1 sql> sql> sql> alter system set undo_tablespace=undotbs01 sid='cxldb1' scope=both; システムが変更されました。 sql> sql> show parameter undo name type value ------------------------------------ ----------- ------------------------------ temp_undo_enabled boolean false undo_management string auto undo_retention integer 10800 undo_tablespace string undotbs01 sql>
六、等待原undo表空间segment状态变更为offline
select t.segment_name, t.tablespace_name, t.segment_id, t.status from dba_rollback_segs t where t.tablespace_name in ('undotbs1','undotbs2') and t.status != 'offline';
七、删除原undo表空间以及数据文件
sql> drop tablespace undotbs1 including contents and datafiles; 表領域が削除されました。 sql> drop tablespace undotbs2 including contents and datafiles; 表領域が削除されました。 sql>
以上就是oracle rac模式下undo表空间爆满的解决方案的详细内容,更多关于oracle undo表空间爆满的资料请关注代码网其它相关文章!
发表评论