我们有一个供远程移动工作人员使用的应用程序。它在笔记本电脑上安装 WAMP (Server2Go),并使用 MySQL 在本地存储数据。所有表都是 MyISAM。工作人员每天一次通过 HTTP 脚本将数据库同步到我们的中央服务器,查询数据并将其发布到我们的网站。
问题是,许多笔记本电脑数据库表不断损坏。MySQL 似乎保存了信息(我没有收到任何查询错误),但表却损坏了。我必须不断修复表(这会在此过程中删除几行数据)。
有人知道如何解决这个问题吗?在笔记本电脑上切换到 InnoDB 是否明智?完全使用不同的数据库系统怎么样?我研究过 MySQL Embedded,但它似乎与常规 MySQL 使用的是相同的引擎。
答案1
如果这种情况发生在多台机器上,我只能将其视为应用程序中的一个错误,这显然不会报告所有错误。请记住,访问 MySQL 不仅仅是查询。例如,在运行任何返回结果的查询后,您是否正确释放了结果?
除非您确实需要 WAMP 安装的其他内容(您没有给出任何指示),否则请考虑将其完全删除并仅安装最新的 MySQL。更改数据库引擎实际上不太可能解决问题,因为没有任何迹象表明问题出在哪里。