【问题标题】:How to fix MS SQL linked server slowness issue for MariaDB如何修复 MariaDB 的 MS SQL 链接服务器缓慢问题
【发布时间】:2019-01-03 18:17:38
【问题描述】:

我正在使用 SQL Link 服务器从 MariaDB 获取数据。
但是当我从链接服务器使用 MariaDB 时,我遇到了缓慢的问题。

我使用以下场景来获取结果(也描述了查询所花费的时间)

如果您有任何解决方案,请提出建议。

患者表中的总行数:62520

SELECT count(1) FROM [MariaDB]...[webimslt.Patient] -- 2.6 second
SELECT * FROM OPENQUERY([MariaDB], 'select count(1) from webimslt.patient') -- 47ms
SELECT * FROM OPENQUERY([MariaDB], 'select * from webimslt.patient') -- 20 second

【问题讨论】:

  • 你为什么要从 sql server 查询 Maria?

标签: sql sql-server sql-server-2012 mariadb


【解决方案1】:

这真的不是一个公平的比较......

SELECT COUNT(1) 只返回一个数字,并且可能会使用索引来计算行数。

SELECT * 正在返回表中的所有数据。

返回数据是一个昂贵(缓慢)的过程,因此返回数据显然需要时间。然后是数据传输的问题,服务器是否使用高速连接?这也是其中的一个因素。通过链接服务器进行查询永远不会像直接查询数据库那样快。

如何提高速度?我将首先通过指定列并添加 where 子句仅返回您需要的数据。之后,您可能可以在 Maria 中使用索引来尝试加快速度。

【讨论】:

    猜你喜欢
    • 2010-12-04
    • 1970-01-01
    • 2013-09-14
    • 2017-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多