【问题标题】:Mysql workbench synchronize different databasesMysql工作台同步不同的数据库
【发布时间】:2011-11-04 00:20:04
【问题描述】:

我正在使用 Mysql 工作台为我的应用程序开发我的数据库。

我至少使用两个数据库,例如:

  • my_local :我的本地测试数据库,它始终与 mysql 工作台同步
  • myserver_database :服务器中的最终数据库,请记住,此数据库正在生产中,用户将对其进行更新,我不能丢失存储在其中的任何信息

现在我可以在每次需要时同步我的数据库,但我找不到将方案更新到最终服务器的方法,因为它们具有不同的名称,我得到类似:

my_local => N/A
N/A      <= myserver_database

过去我只是在 mysql 工作台中重命名了数据库,但它似乎不再工作了,可能是因为一个错误。

我希望能够将相同的工作台方案与不同的数据库同步,无论数据库名称如何,我都没有找到强制数据库名称的方法,即使通过修改 default_scheme。

请记住,我会多次这样做,因此最好尽可能避免使用棘手或危险的解决方案。

【问题讨论】:

  • 这不是您的问题的分析器。您可以尝试借助 dbForge Studio for MySQL 中的模式和数据比较工具来比较和同步您的数据库 - devart.com/dbforge/mysql/studio
  • @Devart 我对 mysql Workbench 中的所有功能都很满意,而且它是 100% 免费的;我只需要修复这个简单而愚蠢的错误;我不明白为什么它总是使用明确的数据库名称而不是使用选定的数据库。

标签: mysql database synchronization mysql-workbench mysql-gui-tools


【解决方案1】:

我知道这个问题已经很老了,但我能够在工作台 5.2.40 上做到这一点,并且网上没有太多更新的资源来解释如何。

首先我得到了一个旧数据库的脚本:

mysqldump -no-data myolddb > script.sql

(我只想同步模式,这也可以在工作台上完成)

现在的诀窍是通过添加 use mynewdb; 作为第一行来修改脚本,这样工作台就不会说 N/A 或默认架构废话。

在工作台上,我在我的服务器上创建了 mynewdb 的 EER 模型,然后使用我修改的脚本在向导中“数据库->与任何源同步”并从“模型 Schemadata”到“脚本文件”中选择最初。然后同步向导正常工作。

【讨论】:

  • 谢谢!诀窍是与脚本同步,而不是与活动数据库同步。
猜你喜欢
  • 1970-01-01
  • 2021-07-02
  • 1970-01-01
  • 1970-01-01
  • 2011-04-08
  • 1970-01-01
  • 2016-12-14
  • 2011-10-30
  • 2020-11-16
相关资源
最近更新 更多