Delphi with MySQL 64-bit Firedac



您好,我一直在开发环境中使用MySQL,64位Firedac,并且正在尝试将应用程序移动到新机器上。我已经在新机器上安装了MySQL 8并且工作正常。

我制作了一个简单的应用程序来连接德尔福XE8。我构建了一个 64 位应用程序。我在可执行文件的目录中包含一个 mysql dll。似乎需要

libmysql.dll 从 6/10.2019 @ 09:51 3,984 KB.如果我从开发计算机上的 exe 目录中删除此文件,则会出现错误:

[FireDAC][Phys][MySQL]-314.无法加载供应商库 [libmysql.dll 或 libmysqld.dll]。找不到指定的模块。提示:检查它是否在 PATH 或应用程序 EXE 目录中,并且具有 x64 位。

我只能在 IDE 之外运行该程序.dll libmysql 包含在 exe 目录中。

如果我将包含应用程序的文件夹复制到新机器上,无论 libmysql.dll 是否包含在目录中,我都会得到与上面相同的错误。

任何有MySQL 64版本8和Firedac经验的人都可以帮助我解决这个问题吗?这应该是一件简单的事情,它需要在没有安装delphi的新机器上工作。

谢谢 道格

如果您的libmysql.dll实际上丢失了,并且缺少libmysql.dll所需的库,您将收到相同的错误消息。在这两种情况下,都无法加载库。

虽然您当然应该首先确保可以找到该库(例如,将其放入与可执行文件相同的目录中(,但此问题的常见原因是缺少Visual Studio的Visual C++ Redistributable。这是libmysql.dll和MySQL服务器本身(以及许多其他软件(的先决条件,您需要在目标系统上安装此软件包。

或者,对于 SSL 支持,您还需要 OpenSSL 库。它们不一定需要安装,您只需将 2 个 dll 复制到与libmysql.dll相同的目录即可。

最新更新