在C#部署上设置MySQL服务器

在C#部署上设置MySQL服务器,c#,mysql,deployment,C#,Mysql,Deployment,我已经完成了应用程序的第一个版本的开发,它使用MySQL(在一个许可证下本地,在另一个许可证下托管) 将应用程序连接到托管数据库工作正常,我在应用程序中编辑连接到托管服务器详细信息,工作正常 但是,当我尝试在本地使用它时(服务器:localhost等),我会收到一个错误,说明它无法访问服务器。在我的应用程序中,我已经包含了mysql DLL文件,但我希望用户不必安装mysql服务器,它的下载量大约为100MB(我知道现在下载量很小,但希望安装过程尽可能轻松) 我知道这将是一个简单的修复只是添加此

我已经完成了应用程序的第一个版本的开发,它使用MySQL(在一个许可证下本地,在另一个许可证下托管)

将应用程序连接到托管数据库工作正常,我在应用程序中编辑连接到托管服务器详细信息,工作正常

但是,当我尝试在本地使用它时(服务器:localhost等),我会收到一个错误,说明它无法访问服务器。在我的应用程序中,我已经包含了mysql DLL文件,但我希望用户不必安装mysql服务器,它的下载量大约为100MB(我知道现在下载量很小,但希望安装过程尽可能轻松)

我知道这将是一个简单的修复只是添加此安装作为一个先决条件,但我相信有一种方法可以做到这一点,没有这个,或者可能没有。是否有一个脚本我可以运行,将通过运行和安装用户服务器等

感谢您的帮助

谢谢


Shaun连接到本地mysql数据库意味着有一个mysql数据库服务正在运行,并且以前安装过

如果您想要一个数据库,您可以在不安装完全成熟的数据库的情况下随程序分发,有很多这样的数据库

否则,您的用户将不得不在自己的计算机上安装mysql并保持其运行。

或者您可以使用,这是我迄今为止最好的体验。 重构程序来使用它应该很容易,而且不需要用户设置就可以使用它


希望这有帮助:)

我已经研究了SQLLite,唯一的问题是我的应用程序将有两个变体,一个本地数据库(仅在该计算机上使用)和一个托管数据库(托管数据库),因此它可以通过internet连接从任何地方使用。所以我不想为每种数据库类型使用两组不同的语句,我还读到SQLLite不适合多访问,因此不适合在线版本的程序,尽管这些信息可能已经过时。问题是,据我所知,没有免费的集成mysql版本。您可能应该切换到提供此功能的任何其他数据库系统,如Microsoft SQLServer(服务器)和MSSQLSE(客户端后端),如@Haedrian所述。您好,谢谢您的建议,您知道我是否可以将MySQL server.MSI与我的安装程序一起安装,作为先决条件。或者我必须从Oracle购买商业许可证才能这样做?谢谢肖恩