我正在处理一个使用 mysql 作为数据库的项目。该应用程序由许多客户端托管,我们经常对当前的实时系统进行升级。
在某些情况下,客户端更改了数据库结构(添加新表)并导致一些意外的数据库崩溃。
我需要记录在该数据库中完成的所有结构更改,以便我们找到正确的根本原因。我们不能使用 diff 工具做到 100% 正确,因为它不会显示中间更改。
我找到了http://www.liquibase.org/工具,但似乎有点复杂。
是否有任何众所周知的技术或工具来仅跟踪数据库结构更改。
我正在处理一个使用 mysql 作为数据库的项目。该应用程序由许多客户端托管,我们经常对当前的实时系统进行升级。
在某些情况下,客户端更改了数据库结构(添加新表)并导致一些意外的数据库崩溃。
我需要记录在该数据库中完成的所有结构更改,以便我们找到正确的根本原因。我们不能使用 diff 工具做到 100% 正确,因为它不会显示中间更改。
我找到了http://www.liquibase.org/工具,但似乎有点复杂。
是否有任何众所周知的技术或工具来仅跟踪数据库结构更改。
如果您有一个应用程序供您的客户管理这些架构更改,您可以使用应用程序级别的机制。如果您有基于 Python 和 Django 的解决方案,您可能会使用提供模式更改跟踪和回滚的 South。
来自mysql studio,您可以生成所有对象的架构定义并将它们与您的标准架构定义进行比较,这样您就可以比较两个数据库架构......
生成两个数据库的脚本(一个是客户的数据库,一个是主副本数据库),然后使用文件比较工具进行比较,这将是我认为的最佳做法,因为这样您可以跟踪添加了哪个列,删除了哪个列,哪个索引同样添加,无需任何工具下载。
比较两个 MySQL 数据库的可能重复?希望这可以帮助。