【发布时间】:2011-12-25 13:47:52
【问题描述】:
我们产品的旧版本允许在单个存档文件中捕获系统的当前状态,该存档文件还包含 MySQL 数据库文件 - 大量
现在我们有了下一代产品,它不会像抓取数据库文件那样做傻事,但它必须知道读取旧版本产生的档案。
我们的产品是商业闭源产品,但不是很贵。我们不得不停止使用 MySQL,因为第二个原因(Oracle 更改了 MySQL 许可),我们不能使用 MariaDB,因为第一个原因(他们的许可吓坏了公司律师)。
那么,我的问题是还有其他方法可以读取这些 MySQL 数据库文件吗?商业轻量级解决方案很好 - 毕竟,我们谈论的是数据库文件的只读探索。也欢迎免费/开源替代品,只要它们不意味着使用它们的代码也必须是开源的。
谢谢。
编辑
除了能否继续使用旧版本的 MySql 读取旧的 MySql 数据库文件的问题外,问题仍然是如何读取它们?我的意思是,MySql 不再是我们的数据库,所以即使我可以捆绑旧的 MySql 实现,我是否必须安装完整的数据库引擎才能读取文件?我宁愿避免这种情况。
【问题讨论】:
-
如果您只想读取数据,这并不难。只是需要阅读一些文档或进行一些逆向工程。哦,忽略 Myi 文件。您只需要数据(在 myd 文件中)和格式(frm 文件)...
-
这始终是一个选项,但我想保留最后一个选项。
-
如果项目已经使用了旧版本的 MySQL,您可以在旧的许可方案下使用它们。请参阅Does a License Change for OSS cover all versions, including previous releases? 并咨询律师。
-
感谢您的信息 - 我会将其传递给相关人员。它仍然不是答案,但绝对值得支持 - 你可以将其重新发布为答案吗?
-
我们最近经历了类似的事情;我们发现我们能够导出所有数据,然后将en.wikipedia.org/wiki/SQLite 与我们的产品一起使用。这完全取决于复杂性!许多商业闭源产品都使用它。
标签: mysql