快照库MV不能成功刷新问题的解决
2013-10-14 11:32
176 查看
前几天,一个用户找到我,说他们的物化视图不能刷新了,这得从几天前主库的一次意外down机说起(另文说明),前几天,用户现场的一个中心库因某原因意外down掉了,当时短期内对中心库进行了重启修复,没有造成数据丢失,但重启后,围绕中心库的几个快照库不能刷新MV了,让我帮忙解决下,没办法,用户就是上帝,用户的需求就是命令,开工吧。
首先,我看了一个快照库上的MV,都是从中心库往快照库中同步数据的,并且也对一个数据量小的MV进行了测试,确实是不可以刷新,一直卡在那里不动,但在快照库上,通过定义MV的SELECT语句,可以快速的从中心库查到数据,有点纳闷儿,怎么回事儿呢?继续排查:
select * from v$Lock where type='TM' and id1='1234';
看到结果,发现了线索,如下:
ADDR KADDR SID TYPE ID1 ID2 LMODE REQUEST CTIME BLOCK
--------------------------------------------------------------------------------------
64B3AB44 64B3AB5C1,050
TM1234
0 3 0
370500 0
如果有的同学还没发现线索,那么继续:
select * from v$session where sid=1050;
这条语句的结果较长,我就不贴在这里了,通过结果的SCHEMANAME,MACHINE,PROGRAME,TYPE,LOGON_TIME,STATE等信息,基本可以确定问题所在了,否则,可以通过SQL_ID继续检查:
select * from v$sql where sql_id='bsw0sjtftg6vw'
通过以上语句,可以获取到具体的SQL,这样就能更清楚这些会话当时所做的工作,好了,确定问题所在,我们总的解决:
alter system kill session 'sid,serial#';
命令发出去,居然kill不掉,v$session虽然显示killed,但依然能查到该session,并且,再次刷新MV时,依然卡在那里,通过v$session的process,可以知道该sid对应的PID,于是:
kill -9 pid
再次测试MV的刷新,成功解决,其他几个快照库都如法炮制,MV问题依次全部解决,大家参照学习,禁止转载。
首先,我看了一个快照库上的MV,都是从中心库往快照库中同步数据的,并且也对一个数据量小的MV进行了测试,确实是不可以刷新,一直卡在那里不动,但在快照库上,通过定义MV的SELECT语句,可以快速的从中心库查到数据,有点纳闷儿,怎么回事儿呢?继续排查:
select * from v$Lock where type='TM' and id1='1234';
看到结果,发现了线索,如下:
ADDR KADDR SID TYPE ID1 ID2 LMODE REQUEST CTIME BLOCK
--------------------------------------------------------------------------------------
64B3AB44 64B3AB5C1,050
TM1234
0 3 0
370500 0
如果有的同学还没发现线索,那么继续:
select * from v$session where sid=1050;
这条语句的结果较长,我就不贴在这里了,通过结果的SCHEMANAME,MACHINE,PROGRAME,TYPE,LOGON_TIME,STATE等信息,基本可以确定问题所在了,否则,可以通过SQL_ID继续检查:
select * from v$sql where sql_id='bsw0sjtftg6vw'
通过以上语句,可以获取到具体的SQL,这样就能更清楚这些会话当时所做的工作,好了,确定问题所在,我们总的解决:
alter system kill session 'sid,serial#';
命令发出去,居然kill不掉,v$session虽然显示killed,但依然能查到该session,并且,再次刷新MV时,依然卡在那里,通过v$session的process,可以知道该sid对应的PID,于是:
kill -9 pid
再次测试MV的刷新,成功解决,其他几个快照库都如法炮制,MV问题依次全部解决,大家参照学习,禁止转载。
相关文章推荐
- 快照库MV不能成功刷新问题的解决
- 解决"打包成功后的apk点击程序出现白屏,不能进入界面"的问题
- GraphGen 在我的电脑上不能运行成功问题的解决
- ubuntu能够认证成功但不能上网问题的解决
- 如何使用 BindingSource 绑定 ListBox,同时解决绑定 List<T> 后修改数据源不能同时刷新界面显示的问题
- 艰辛的aptana插件安装之路(续)--成功解决myeclipse不能启动和报java.lang.NullPointerException的问题
- 微软Windows卸载工具--可解决更新Silverlight不能成功安装问题
- 解决tomcat部署下的web项目网页更改不能自动刷新的问题
- Algorithms algs4不能成功安装问题解决
- 在表示层禁用浏览器缓存的方法,以解决应用开发不能即时刷新体现修改结果的问题
- 解决Xcode7.1上传成功但iTunesconnect一直不能构建版本的问题
- 成功解决Win7 64位系统下GraphEdit 不能显示Directshow.net远程图表的问题
- 成功解决win7不能重装ie9的问题
- 艰辛的aptana插件安装之路(续)--成功解决myeclipse不能启动和报java.lang.NullPointerException的问题
- 解决Xcode7.1上传成功但iTunesconnect一直不能构建版本的问题
- 解决百度富文本编辑不能上传视频成功但是在IE浏览器不能播放、显示的问题、解决浏览器不支持video标签
- 艰辛的aptana插件安装之路(续)--成功解决myeclipse不能启动和报java.lang.NullPointerException的问题
- 已解决问题:从Excel中读数据到数据库,本地VS运行都成功,网站发布后不能读取数据