暂无图片
分享
伤城
2019-04-10
expdp会不会对正在备份的表加共享锁等其他锁

我在备份时候drop表,会报ora00054错误。不知道是不是和expdp有关

收藏
分享
4条回答
默认
最新
章芋文

drop需要获取排他锁,如果表上有其他锁,就会报ora-54,查看下数据库中的锁就知道了

set linesize 180
col username for a15
col owner for a15
col OBJECT_NAME for a30
col SPID for a10

--查询TMTX锁
select /*+rule*/* from v$lock where ctime >10 and type in ('TX','TM') order by 3,9;

--查询数据库中的锁
select /*+rule*/s.sid,p.spid,l.type,round(max(l.ctime)/60,0) lock_min,s.sql_id,s.USERNAME,b.owner,b.object_type,b.object_name from v$session s, v$process p,v$lock l,v$locked_object o,dba_objects b where  o.SESSION_ID=s.sid and s.sid=l.sid and o.OBJECT_ID=b.OBJECT_ID and s.paddr = p.addr and l.ctime >10 and l.type in ('TX','TM','FB') group by s.sid,p.spid,l.type,s.sql_id,s.USERNAME,b.owner,b.object_type,b.object_name order by 9,1,3,4;
暂无图片 评论
暂无图片 有用 0
伤城

因为是夜里出现的错误,所以现在无法排查锁,有其他日志可以查询吗?trace可以吗?因为是现在怀疑是正在expdp时候drop表,expdp会加一个共享锁吗?然后drop就会报错了。这样就能解释通夜里报错了。从时间上可以对上。

暂无图片 评论
暂无图片 有用 0
墨天轮

可以生成下当时的ASH报告确认一下。

暂无图片 评论
暂无图片 有用 0
章芋文
问题已关闭: 问题已经得到解决
暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏