Oracle db table DBeaver 中的数据加载太慢

Oracle db table data loading is too slow in DBeaver

我正在使用 DBeaver 连接到 Oracle 数据库。数据库连接和 table 属性视图功能工作正常,没有任何延迟。但是获取 table 数据太慢了(有时大约 50 秒)。

有什么设置可以加快在 DBeaver 中获取 table 数据的速度吗?

更改 oracle 数据库连接中的以下设置将比未设置时更快地获取 table 数据。

右键单击您的数据库连接 --> 编辑连接 --> Oracle 属性 --> 勾选 'Use RULE hint for system catalog queries' (默认情况下未设置)


更新

在较新版本 (21.0.0) 的 DBeaver 中,此处出现了更多性能选项。打开它们可以显着提高我的性能

我从未使用过 DBeaver,但我经常看到使用太小的 "array fetch size"** 的应用程序,这通常会造成获取问题。

** 数组获取大小注意事项: 根据 Oracle 文档,获取缓冲区大小是一个应用程序端内存设置,它会影响单个获取返回的行数。通常,您会平衡单次提取返回的行数(a.k.a。数组提取大小)与需要提取的行数。

与需要返回的行数相比,较低的数组提取大小将表现为处理每次提取所需的增加的网络和客户端处理的延迟(即每次网络往返的高成本[SQL*网络协议])。

如果是这种情况,您可能会看到“SQL来自客户端的网络消息” [在 gv$session 或其他地方] 的等待时间非常长。

SQL来自客户端的网络消息 此等待事件由会话在等待来自客户端的消息到达时发布。通常,这意味着会话处于空闲状态,但是,在 Client/Server 环境中,这也可能意味着客户端进程 运行 缓慢或存在网络延迟。此等待事件的高等待时间不会降低数据库性能。