mariadb 插入MS SQL速度慢

kpbwa7wx  于 2022-11-23  发布在  其他
关注(0)|答案(1)|浏览(195)

我需要将数据从10.5.15-MariaDB-0 + deb11u1传输到Microsoft SQL Server 2019(RTM-CU16)(KB5011644)-15.0.4223.1(X64)。我已经在MariaDB + unix ODBC驱动程序中安装了用于MS SQL的egine Connect。我已经创建了这些表(用于远程访问MS SQL):
第一个
如果我通过此命令插入数据(Tabyyy是MariaDB中的本地表):

INSERT INTO `Tabxxx` SELECT * FROM `Tabyyy` WHERE ID < 100;

上述命令的执行速度比以下命令慢得多:

SELECT * FROM `ExternCommand` WHERE `cmd` = " ... "

其中...表示INSERT INTO Tabxx VALUES(...),(...)...类型的文本,其中是与表Tabyyy中ID〈100的数据相同的数据。
有人能解释一下为什么吗?如何加快从MariaDB到MS SQL的大约500,000行的传输速度?

trnvg8h3

trnvg8h31#

最快的方法可能是使用链接服务器。您可以在SSMS中设置此功能。
那就做吧

INSERT YourTable WITH (TABLOCKX)
(columns)
SELECT columns
FROM linkedservername.database.schema.table;

如果您也可以将WITH (TABLOCK)提示加入至链接服务器数据表,则也会提高效能,但代价是锁定整个数据表以防止写入。

相关问题