首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用.NET winforms应用程序安装MYSQL

使用.NET winforms应用程序安装MYSQL
EN

Stack Overflow用户
提问于 2008-12-18 03:52:12
回答 6查看 6.5K关注 0票数 6

我有一个利用MYSQL的C#应用程序。我正处于测试版发布点,需要一个包含我的应用程序以及MYSQL的安装包。所以基本上,我需要安装MYSQL并从我的.NET安装包中执行恢复。

任何帮助都将不胜感激。

EN

回答 6

Stack Overflow用户

发布于 2009-01-05 22:48:32

第一步:你做错了

您正在尝试安装mysql服务器。这应该是你发现问题的第一个线索。大多数服务器应用被设计为安装在服务器上,而不是安装在客户端上。其中值得注意的一点是,服务器应用程序喜欢假设它们“拥有”服务器。这对客户端应用来说是一个巨大的禁忌。

步骤2:做出决定,因为我们已经得到了正确的信息

现在我们已经确定我们做错了,我们需要选择要做什么。我们有两个选择:

  1. 从MySQL切换到‘客户端’数据库,如SQLite或SQL Server Compact Edition。
  2. 解决安装服务器应用程序的问题。

我个人建议尽快切换到SQLite (或类似的)。这是一件“正确的事情”,在未来的几年里,你将不再需要维护黑客。

步骤3:无论如何你都会想要破解MySQL,因为它可能看起来更简单。

你已经被警告过了。以下是您需要注意的一些事情,并加以缓解:

  1. MySQL要安装到程序文件\mysql中。如果用户自己已经安装了MySQL。您将破坏您需要告诉您的MySQL版本安装到自定义文件夹中的所有
    • 。我建议您将其作为application

的子文件夹

  1. MySQL希望作为服务运行(该服务可能会被称为'mysql')。同样,如果用户已经拥有mysql,您将破坏一切。您需要在不同的name

下运行

  • 服务

  1. MySQL服务器可能想要将文件写入到Program files \等。
    • 您需要更改其配置,使其写入%APPDATA%等on

  1. MySQL将假定它始终由同一用户运行。如果你的机器上有两个用户想要使用你的程序,你需要相应地修改,要么作为本地服务帐户运行MySQL (安全缺陷),要么为每个用户安装一个单独的mysql。

考虑到这一切,我想说你最好的选择就是set up an xcopyable mysql

票数 4
EN

Stack Overflow用户

发布于 2008-12-18 04:16:21

我已经在另一个question上发布了答案

我们在这个问题上采取了不同的方法。我们通过在调用MySQL之前编写一个包装器来生成配置文件,从而使MySQL可以xcopy-able (以正确设置基本路径等)。然后,我们使用标准设置安装了另一个服务。这项服务将为我们启动MySQL和其他所需的后台程序(在我们的情况下是Apache)。因为MySQL是由我们部署的,所以我们想要完全控制它。

因此,使用这种方法,您可以简单地将MySQL包包含在安装中,并且只需担心安装您自己的服务。

票数 3
EN

Stack Overflow用户

发布于 2008-12-18 04:08:18

这个问题与another question非常相似。然而,这些答案并没有真正的帮助。

你可以使用run executables from a custom action in the .Net deployment project,这是我推荐的。(查看标题“将可执行文件作为自定义操作调用”)

希望所有的事情都可以通过命令行来解决。如果没有,试试像Wise或InstallShield这样的脚本安装程序,我认为他们对这样的东西有更好的支持。

希望这能有所帮助!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/376867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档