如何定义数据库部署的体系结构

时间:2015-03-18 16:38:57

标签: mysql database architecture

HY。

我正在构建一个软件然后我将源代码部署到3个不同的mysql数据库(托管在3个不同的地方),我的问题是......有没有办法自动化我在其中一个中所做的更改db到其他人???

我可以使用任何工具,所以我不必手动更改所有数据库???

2 个答案:

答案 0 :(得分:1)

如果您想要自动执行作业,则必须自己创建脚本工具并根据需要执行。但我现在看到的是你需要Database Versioning的某种方式。

起初很难理解但是很容易理解它。版本控制过程是:

  1. baseline:这是您在一个脚本中的整个数据库表和预定义记录。通常它记录在主要版本上,例如1.0.0.sql或2.0.0.sql。基线只执行一次。
  2. 更新:这是一个"补丁"对于在每个sql脚本中分隔的表格。
  3. 查看,功能和程序:你的每个视图,函数和程序在分离的sql文件中。
  4. schema_change_log:此表记录基线版本并更新在数据库中执行的补丁版本
  5. 发布步骤:

    1. 检查schema_change_log
    2. 中的最新版本
    3. 获取版本大于最新版本的更新
    4. 执行更新脚本<​​/ li>
    5. 删除所有视图,功能和程序
    6. 重新应用所有观点,功能和程序

答案 1 :(得分:0)

我建议使用MySQL Workbench,这样您就可以对模型进行任何更改,然后通过数据库菜单,您可以将更改与数据库同步。