1 问题:前面说到我的项目中创建了一个定时刷新的物化视图,这个物化视图是基于一个左连接两个远端机器的表的的查询。前一篇《Oracle【定期刷新】的【基于连接】的物化视图》见 http://www.linuxidc.com/Linux/2013-11/92863.htm大概样子就是这样: create materialized view VIEW_NAMErefresh 字句asselect (.....)from Table1@DBLINK_NAME t1 left join Table2@DBLINK_NAME t2on t1.id = t2.sid开始的时候Table1只有几十条数据,这个物化视图创建没问题,也能定时更新。后来当Table1的数据量增大到34万条之后,物化视图就不再更新了,最后重新执行物化视图发现报出【ORA-02063: preceding line from DBLINK_NAME】这个错误。
2 思考解决方法的过程:报出错误之后我发现焦点聚焦到了t2这个地方,恰好发现旁边的人在使用PL_SQL软件,连接到了这个远端的数据库,并且打开了t2这个表,然后我就觉得可能是因为数据库表死锁导致这个物化视图不能执行。然后把吧PL_SQL关掉,发现还是有这个问题。。。 其实我再想想发现有点天真,select语句怎么可能和PL_SQL软件竞争呢。。。除非是update/insert等语句倒是有可能。然后我继续尝试,发现:(1)吧左连接去掉,单独通过DBLINK来查询t1来建立物化视图,或者单独通过DBLINK来查询t2来建立物化视图,都是OK的;(2)还是保留左连接,仅仅执行创建物化视图语句中的select语句部分(即左连接两个DBLINK的表),还是报这个错误;由此可见这个错误和物化视图毫无关系,而且一定和左连接有关系。。。。
3 解决方法:后来又上网查了一下,发现有人说可能是因为创建DBlink时,密码没有用双引号括起来,就会导致ORA-02063这个错误。。。 明天去公司一定要试一下。(见
更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2013-11/92864p2.htm )
相关阅读:ORA-01172、ORA-01151错误处理 http://www.linuxidc.com/Linux/2013-06/86529.htmORA-00600 [2662]错误解决 http://www.linuxidc.com/Linux/2013-06/86528.htmORA-01078 和 LRM-00109 报错解决方法 http://www.linuxidc.com/Linux/2012-07/66044.htmORA-00471 处理方法笔记 http://www.linuxidc.com/Linux/2013-09/90017.htmORA-00314,redolog 损坏,或丢失处理方法 http://www.linuxidc.com/Linux/2013-09/90646.htmORA-00257 归档日志过大导致无法存储的解决办法 http://www.linuxidc.com/Linux/2013-09/90594.htm更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12
Oracle【定期刷新】的【基于连接】的物化视图关于RMAN的配置信息存储和控制文件的关系相关资讯 ORA-02063
- ORA-01017/ORA-02063 DbLink建立错 (01/30/2013 08:00:27)
| - Oracle 创建dblink 报错:ORA-01017 (01/21/2013 18:57:28)
|
本文评论 查看全部评论 (0)