ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Oracle10g通过dblink访问数据异常

Oracle10g通过dblink访问数据异常

原创 Linux操作系统 作者:qwpuma 时间:2010-03-05 16:21:24 0 删除 编辑

远程数据库中分区表:test 安装city_code,fee_date分区,表的分区索引列为 user_id,city_code,fee_date

dblink名字:a2b

本地数据库执行的语句为:  select sum(fee) from test@a2b where user_id = 2344 and city_code = 'aaa' and fee_date = 'xxxxxx';

前段时间遇到了一个奇怪的问题,以前通过dblink访问一个分区表,可以很快的返回数据,这段时间却无法正常返回,查询等待事件为:SQL*Net more data from dblink。而在远程数据库中的等待事件为:db file sequential read,并且正在执行的语句变成了select * from test。

通过在本地数据库及远程数据中建立过程来进行trace:


CREATE OR REPLACE PROCEDURE settrace
as
c1 integer;
r1 integer;
BEGIN
c1:=dbms_sql.open_cursor;
dbms_sql.parse(c1,'alter session set timed_statistics=true', dbms_sql.v7);
r1:=dbms_sql.execute(c1);
dbms_sql.parse(c1,'alter session set events ''10046 trace name context forever, level 12''', dbms_sql.v7);
r1:=dbms_sql.execute(c1);
END;
/

/* Perform. the trace */

connect
exec settrace
exec

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/51305/viewspace-628739/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2009-01-16

  • 博文量
    3
  • 访问量
    9202