两个相同DATABASE MySQL的SCHEMA

时间:2014-09-02 16:33:08

标签: mysql database schema mysql-workbench

我对MySQL比较陌生,而且我很喜欢'它。
我想要做的是在同一个数据库上有两个不同的SCHEMAS。 - 实际上我在这种情况下对术语感到困惑 - 所以请允许我给你描绘整个画面。

我有一个数据库(比如财务)我正在运行一个(风险数学)模型。所以我在我的计算机中加载数据库并用另一个程序操作它 为了测试模型,我需要加载前一个备份 - 上个月的数据库并运行模型,好像我过去一样,然后使用这个月的数据进行测试。

据我所知,这个备份取代了我已经使用的数据库。这对我来说不是最优的,因为那时我必须重新加载同一数据库的当前版本。理想情况下,我希望将它们都存储在我的计算机中并从一个切换到另一个,而不是每次都重新加载。

如果有人能给我一些指导,我会很感激。 祝你有美好的一天。

1 个答案:

答案 0 :(得分:2)

首先:databaseschema是相同的。两者都是可互换的(在MySQL中)。模式是数据库服务器中的顶级结构,包含属于它的所有其他数据库对象。

创建与同一服务器的2个连接(您正在创建与服务器的连接,而不是数据库)您将访问相同的对象,从而访问相同的数据,无论您选择哪个连接。所以,在你的情况下,这没有任何帮助。

您可以拥有任意数量的模式,例如,如建议的那样,开发模式和生产模式。它们都可以存储在同一个数据库服务器中,并且可以包含完全相同的内容。使用转储,您可以创建另一个用于测试的模式。 MySQL Workbench允许将其恢复到与转储文件中指定的模式不同的模式。

enter image description here

现在,为了在当前数据和旧数据之间切换,您有两个选项:

  1. 重命名模式,以便您当前要使用的模式具有应用程序中使用的标准名称。
  2. 使您的应用程序可配置为通过设置,命令行参数等接受数据库/模式名称。
  3. 第二个显然更灵活,特别是如果你开始有更多的历史数据(在更多的模式中)。