几个小时前,我执行我的程序,打印一系列进程的一致获取和时间。我获得了1.5秒。
现在我放下所有桌子和我的集群,然后我再次执行我的程序,但现在我获得了50秒。我已经好几次这样做了,我也得到了同样的(50秒)我不知道会发生什么事情
请帮助!
答案 0 :(得分:0)
也许oracle正在尝试使用旧的统计信息来优化您的查询,例如在这里查看: http://docs.oracle.com/cd/B19306_01/server.102/b14211/stats.htm#i41282
您应该删除统计信息,以便使用新数据重新生成统计信息:
BEGIN
DBMS_STATS.DELETE_TABLE_STATS('YOURSCHEMA','YOURTABLE');
END;