mysql - SQL Server 2008 链接 MySQL 服务器慢

标签 mysql sql-server-2008 linked-list odbc

在 Win2K8 上运行 MSSQL Server 2008 Standard SP 2 64 位。我在这台服务器上安装了 64 位 MySQL ODBC 驱动程序版本 5.1.8,从 10/28/2010 开始。我已经配置了一个链接到 MySQL 服务器 5.1 的 DSN,该服务器运行在 Mac apple-darwin9.8.0 服务器上(别问我,我继承了这个)。我已经通过 MDSASQL 成功创建了一个链接服务器到特定的 MySQL 数据库。

我可以从 SQL Server 框中运行简单的自然查询

SELECT * FROM mysql_table WHERE id = 1;

但是,它的速度非常慢。执行上述查询需要 19 分 52 秒;在本地执行相同的查询需要 0.04 秒。

此外,我尝试执行一个简单的自然更新

UPDATE mysql_table SET field = 0 WHERE id = 1;

这运行了 2 小时,然后返回以下错误:

OLE DB provider "MSDASQL" for linked server "LINKED_MYSQL" returned message "Out of memory.".
Msg 7399, Level 16, State 1, Line 3
The OLE DB provider "MSDASQL" for linked server "LINKED_MYSQL" reported an error. The provider ran out of memory.
Msg 7330, Level 16, State 2, Line 3
Cannot fetch a row from OLE DB provider "MSDASQL" for linked server "LINKED_MYSQL".

这是在几个涉及更新同一个表的失败作业之后发生的,所有这些作业都在开始大约两个小时后失败。

我已经检查了 mysql 的权限,DSN 中指定的用户在 mysql.user 中具有适当的权限(好吧,所有权限)。

如果有人能给我任何调查途径以使其正常工作,我将不胜感激。

最佳答案

避免连接到链接的服务器表并查看dynamic openqueries 并引用之前发布的这个问题。 Linked Server Performance and options

关于mysql - SQL Server 2008 链接 MySQL 服务器慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7474586/

相关文章:

php - 无法保存 php 序列化字符串,错误为 ";"分号字符

mysql - 如何在与 mysql 的同一查询中使用手动创建的字段?

xml - SQL Server XML 路径在根元素上添加周名

sql-server - 将 .bak mssql 2005 恢复到新的 mssql 2008r2 服务器

sql-server - SQL - 在 SELECT 语句和 WHERE 子句中使用变量作为列

c - 仅使用一个函数(段错误)对链表进行归并排序

mysql - 如何删除mysql中匹配条目数低于一定数量的结果

mysql - 在Web2py中访问和显示多个表中的相关记录

c - 插入 c 后,最后一个节点中的数据会替换先前节点中的数据

c++ - 使用带链表的复制构造函数