MySQL可以作为嵌入式数据库与离线应用程序一起安装吗?

时间:2017-03-10 09:43:02

标签: c# mysql database winforms sqlite

我选择SQLite作为数据库,以便轻松分发我的离线c#桌面应用程序(WPF / Winforms),但由于IRD认证,目前已进入MySQL数据库。

我主要担心的是,我想知道如果我可以将MySQL数据库用于离线桌面应用程序,并通过 URL 分发.exe,以便轻松实现无人参与安装。

有可能吗?

1 个答案:

答案 0 :(得分:1)

如SQLite的页面Appropriate Uses For SQLite所示,像MySQL这样的客户端/服务器数据库可以更好地用于客户端/服务器应用程序,大容量网站,非常大的数据集或高并发性。这些都不适用于您的离线应用程序,因此您应该使用旨在嵌入的数据库(不一定是SQLite)。

MySQL有embedded server library,可以直接链接到应用程序。使用C#时,MySQL库链接到.NET MySQL数据库驱动程序,因此使用嵌入式服务器需要重新编译此驱动程序。这种链接将触发MySQL的GPL许可。和

  

自MySQL 5.7.17起,libmysqld嵌入式服务器库已弃用,将在MySQL 8.0中删除。

可以自己安装独立的MySQL服务器;这在Installing MySQL on Microsoft Windows Using a noinstall Zip Archive中有所描述。 但是,这仍然会将MySQL服务器作为单独的进程或服务运行,这可能与计算机上的其他安装冲突;安装人员有责任为目标机器上遇到的任何环境正确配置MySQL实例。