undo空间满的处理方法(含undo的学习与相关解释)
1、查看数据库当前实例使用的是哪个UNDO表空间:
show parameter undo_tablespace
2、查看UNDO表空间对应的数据文件和大小
set lines 200 pages 200
col file_name for a60
col tablespace_name for a20;
select tablespace_name,file_name,bytes/1024/1024 MB from dba_data_files
where tablespace_name like '%UNDOTBS%';
3、查看undo表空间属性:
show parameter undo
select retention,tablespace_name from dba_tablespaces where tablespace_name like '%UNDOTBS%';
解释:
4、查看undo表空间当前的使用情况:
set lines 200 pages 200
col tablespace_name for a30
select tablespace_name,status,sum(bytes)/1024/1024 MB from dba_undo_extents
group by tablespace_name,status;
与一般的用户表空间不同,undo表空间不能通过dba_free_spaces来确定实际的使用情况,undo表空间除了active状态的extent不能被覆盖外。其他状态的extent都是可以空间复用的。
如果active的extent总大小很大,说明系统中存在大事务。如果undo资源耗尽(ACTIVE接近undotbs的总大小),可能导致事务失败。
5、查看什么事务占用了过多的undo:
select addr,used_ublk,used_urec,inst_id from gv$transaction order by 2 desc;
ADDR: 事务的内存你地址。
USED_UBLK:事务使用的undo block数量。
USED_UREC:事务使用的undo record (undo前镜像的条数,例如:delete删除的记录数)
6、查看占用undo的事务执行了什么sql:
set lines 200 pages 200
col program for a30
col machine for a30
select sql_id,last_call_et,program,machine from gv$session where taddr='0000000089A9E2F0';
LAST_CALL_ET: 上一次调用到现在为止过了多长时间,单位为秒,途中显示过了304s (既可以理解为sql已经运行了304s)。
set long 99999
set lines 100
set pages 1000
select sql_fulltext from v$sql where SQL_ID='8gvp49tr474f2';
7、找到了sql,下面就可以联系应用做处理了:
哪台机器,通过什么程序,发起了什么sql,占用了多少undo,是否可以杀掉,sql是否可以改写,是否可以分批提交。。。等
关于UNDO的其他知识:
1、undo的读取方式是单块读的,所以事务的回滚比较慢
2、显示undo使用情况的统计信息:
SELECT
TO_CHAR(BEGIN_TIME,'HH24:MI:SS') BEGIN_TIME,
TO_CHAR(END_TIME,'HH24:MI:SS') END_TIME,
UNDOBLKS
FROM V$UNDOSTAT;
3、system表空间中有一个系统回滚段,只有在对数据字典进行操作时(eg:修改表结构)才用到系统回滚段,另外一种情况,如果undo表空间出现问题,oracle也可能使用system段。
4、undo segment的信息:
SELECT
a.name, b.xacts, b.writes, b.extents
FROM
v$rollname a, v$rollstat b
WHERE a.usn=b.usn;
undo空间满的处理方法(含undo的学习与相关解释)的更多相关文章
- ORA-03113 通信通道的文件结尾(ORA-19804 ORA-16038-归档空间满的处理方法)
1.数据库启动报错SQL> startupORACLE 例程已经启动. Total System Global Area 1887350784 bytesFixed Size 2176848 b ...
- SYSTEM表空间满,解决方法
SYSTEM表空间是Oracle创建数据库时候自动创建的,每个Oracle数据库都会有SYSTEM表空间,而且SYSTEM表空间总是要保持在联机模式下,因为其包含了数据库运行所要求的基本信息,如:数据 ...
- ORACLE的还原表空间UNDO写满磁盘空间,解决该问题的具体步骤
产生问题的原因主要以下两点:1. 有较大的事务量让Oracle Undo自动扩展,产生过度占用磁盘空间的情况:2. 有较大事务没有收缩或者没有提交所导制:说明:本问题在ORACLE系统管理中属于比较正 ...
- Master Note: Undo 空间使用率高 (Doc ID 1578639.1)
Master Note: High Undo Space Usage (Doc ID 1578639.1) APPLIES TO: Oracle Database Cloud Schema Servi ...
- linux磁盘空间用满的处理方法
linux下空间满可能有两种情况 可以通过命令 df -h 查看磁盘空间占用,实际上是查看磁盘块占用的文件(block) df -i 查看索引节点的占用(Inodes) 磁盘块和索引节点其中之一满 ...
- 14.5.7 Storing InnoDB Undo Logs in Separate Tablespaces 存储InnoDB Undo logs 到单独的表空间
14.5.7 Storing InnoDB Undo Logs in Separate Tablespaces 存储InnoDB Undo logs 到单独的表空间 在MySQL 5.6.3,你可以存 ...
- 监控undo空间和临时段的使用情况
--1.监控undo空间情况 ),) free_space from dba_free_space where tablespace_name='UNDOTBS1' group by tablespa ...
- Oracle system表空间满的暂定解决方法
Oracle system表空间满的暂定解决方法 数据库用的是Oracle Express 10.2版本的.利用Oracle Text做全文检索应用,创建用户yxl时没有初始化默认表空间,在系统开发过 ...
- No space left on device 解决Linux系统磁盘空间满的办法
最近Linux电脑在执行mvn时候总是报错: No space left on device 原因是磁盘空间满了,我马上加了20G的硬盘容量,但是还是报错,上网查了一下,发现了解决方法,我用了其中 ...
随机推荐
- gentoo ebuild 私人portage
最近考虑搞个私人 portage, 用于一些软件的安装和管理. mkdir -p /usr/local/portage/app-misc/hello-world cd $_ cp /usr/porta ...
- 阿里云 配置ssl 在nginx上
写给自己的备忘录: 很乱 如果你也是 配置nginx ssl 可以给我留言 ,我是为了 捣鼓微信小程序后台 需要https 阿里云有免费一年的 ssl服务 链接 https://www.aliyun. ...
- java 内部类注意点
1.只有内部类可以是私有类,而常规类只可以具有包可见性,或公有可见性. 内部类访问权限修饰符可以为:public.protected.默认.private:(可以用哪些修饰符视具体内部类类型而定) 常 ...
- PyCharm下的pywin32安装及使用
转载http://www.mamicode.com/info-detail-2145088.html
- 安装jdk1.9后报 Error:java: 无效的源发行版: 1.9
现象: intillj IDE 运行main方法 Information:javac 1.8.0_101 was used to compile java sources Error:java: 无效 ...
- Node.js 程序应用
在打开cmd 控制台 输入 node 然后在cmd中 输入您想要的代码 加减乘除 算法.
- php状态设计模式
状态设计模式的关键就是,环境中拥有所需的全部状态对象,每个状态对象又引用了环境对象:环境对象通过维护一个当前状态属性(用于存放状态对象)从而对所需的全部状态对象产生影响. 下面演示了一个简单的状态设计 ...
- js实现图片上传预览功能,使用base64编码来实现
实现图片上传的方法有很多,这里我们介绍比较简单的一种,使用base64对图片信息进行编码,然后直接将图片的base64信息存到数据库. 但是对于系统中需要上传的图片较多时并不建议采用这种方式,我们一般 ...
- CSS 图像
CSS 图像 <上一节下一节> 通过CSS可以控制图像的大小和对齐方式. 图像大小 虽然在HTML中,img标签有属性height.width设置高和宽,在工作中却使用得非常少,通常使用C ...
- html5移动端查找
用form包裹住input,修改input的类型为seach,然后给input绑定seach事件,当输入状态是输入键盘上会出现搜索,点击搜索就可以查找了 <form action="& ...