改变生产数据库

时间:2011-06-03 17:52:07

标签: mysql database

这可能是一个简单的问题。我有一个数据库,我用来存储我的用户详细信息。我的应用程序查询此数据库以确定它们是否可以访问。

在测试期间,如果我想更改数据库的结构,例如添加新列,我只需要删除表并重新创建它们。我不认为我想在现场系统上这样做。我怎样才能安全地做这样的事情?

由于

3 个答案:

答案 0 :(得分:1)

通常我会在源代码管理中跟踪数据库更改:

  • 拥有脚本的初始基线以生成初始数据库。这个步骤可以在开发和测试环境中根据需要执行,但在生产中它几乎只是第一次执行。
  • 拥有delta脚本文件夹。从头开始生成数据库时,此文件夹中的脚本(以有意义的方式排序,例如数字或带有日期时间戳)在初始基线脚本之后运行。对于此示例,它将是脚本中的ALTER TABLE命令。

从头开始创建数据库时,所有内容都会按顺序运行。将更改应用于实时数据库时,仅运行尚未运行的增量。 (通过跟踪源控件的哪个版本在哪个环境中,跟踪哪些已经运行是一个操作过程。)

如果增量文件夹开始变得无法管理,我想你可以不时重新创建脚本。这可能不是一个坏主意,只是作为一种健全性检查,以确保没有被正确跟踪的事情没有被引入系统。

答案 1 :(得分:0)

更改表是您想要的命令。

答案 2 :(得分:0)

我建议你编写一个简单的php脚本来改变测试数据库而不是手动执行,there are many examples available via google并在生产(实时)数据库上使用相同的脚本

请记住始终先创建备份,以防出现问题。

好运!