我的任务是编写一些内部管理软件。该软件与在线 MySQL 数据库对话。但是,如果没有互联网连接,则系统应使用本地“离线”MySQL 数据库。
首先,我尝试使用远程 MySQL 和本地 SQLCE 来完成此操作。遗憾的是,查询字符串差异很大,因此这是不可行的。
我的问题是;如何在加载应用程序时在特定端口上启动 MySQL 实例,然后在软件关闭时关闭该实例?
我之前已将 XAMPP 与一个软件捆绑在一起,但不确定在这种情况下这是否是正确的方法?
ProcessStartInfo test = new ProcessStartInfo(Application.StartupPath + @"mysqldb\bin");
test.FileName = @"mysqld.exe";
test.UseShellExecute = true;
Process.Start(test);
最佳答案
您也许应该在本地和外部安装 MySQL 数据库。软件加载时,只需使用本地数据库即可。当一切正常后,将本地与实时数据库同步,并将数据库链接从本地切换到实时。不要停止本地数据库,因为如果互联网出现故障,您需要能够使用本地数据库保存数据。
始终与本地同步实时数据库,因此如果互联网已启动,请使用实时数据库,但也可以使用本地数据库。一切都需要同步。然后,数据将始终作为“备份”或离线数据库保存在计算机上,并且您的实时数据库将拥有来自任何地方的所有内容。
使用缓冲区,因此您需要在空白中释放查询。另外,在Windows下,您可以使用服务来启动和停止MySQL。
我希望我回答了您的一些问题。
关于c# - 从应用程序内启动和停止本地 mysql 实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11091232/