首次运行SQL数据库链接速度慢

时间:2016-09-09 11:50:56

标签: sql oracle

我有一个数据库A,它通过数据库链接连接到另一个数据库B

当我在数据库select count(*) from VIEW上执行A时(VIEW从数据库B读取数据),需要大约60秒。

所有后续运行需要约1秒钟。 在与我的sql开发人员断开连接并重新连接后,select仍然需要大约1秒钟。

你有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我的猜测是,在查询视图后,视图上的表的数据可能会缓存在DB2 SGA上。断开您的Sql Developer是很重要的,因为数据是在实例级别缓存而不是在您的客户端上。 如果实例B重新启动或数据从DB Buffer Cache老化,它可能会再次进入磁盘并开始变慢。

答案 1 :(得分:0)

Oracle首先为每个查询创建执行计划。可能是您的视图很复杂,并且其执行计划的创建在首次执行时需要更多时间。因为其执行计划存在于共享池中,所以它运行得很快。