MySQL连接器 - 实体框架

时间:2014-04-29 23:10:41

标签: mysql .net frameworks entity connector

我有一个.NET连接到MYSQL后端的应用程序。在开发机器和服务器上我安装了MySQL Connector 6.5.5,我使用实体框架。

当我在本地机器上查询数据库,并查看生成的SQL时 - 查询包括Select X,Y,Z内连接A内连接B其中C in(1,2,3)。

但是,当我将完全相同的系统部署到实时服务器时,查询完全更改为选择X,Y,Z,LEFT OUTER JOIN 1,LEFT OUTER JOIN 2,LEFT OUTER JOIN 3其中1 = C或2 = C或3 = C.

首先 - 我无法理解为什么SQL不匹配,因为两台机器都安装了相同的连接器。

其次,第二个版本需要10分钟,而第一个版本需要10秒。如何将服务器与我的开发机器对齐?

谢谢!

1 个答案:

答案 0 :(得分:0)

就个人经验而言,我建议您检查服务器上是否还有其他连接。 在本地环境中,您确定您是唯一一个在实时环境中连接到数据库的人,您将接触到mysql端口扫描,还有来自其他用户的其他查询,依此类推。 第二个是你确定你在两台机器上都有相同的mysql数据库版本吗?可能(我不确定)对于不同的mysql版本,有不同的mysql语句翻译。

此外,您可以尝试创建一个检查远程连接和本地连接的过程,以了解是否需要更多时间来连接数据库等等。

在疯狂之前做一些检查。