在主要编写管理软件的公司开发环境中,每个开发人员是应该使用自己的数据库实例,还是应该在开发期间使用中央数据库实例?每种方法的优缺点是什么?其他环境和其他产品呢?

推荐答案

如果你们都共享同一个数据库,那么如果有人对数据库进行了 struct 更改,并且代码没有与之"同步",那么您可能会遇到一些问题.

我强烈推荐每个开发人员使用一个DB,唯一的原因是您不想在"写"测试之后立即看到其他人覆盖您.一个简单的例子?您try 为网站展示产品.一切都在运转,直到所有的产品消失.有问题吗?另一名开发人员决定使用该产品的"活动"标志来测试其他东西.在这种情况下,事务甚至可能无法工作.故事的最后,你花时间调试别人的动作.

我强烈建议每隔一段时间将staging数据库复制到developer数据库,以同步 struct (或者更好,使用一个从头开始重建数据库的工具).

当然,我们需要脚本来更改数据库,所有内容都在源代码管理中.

Database相关问答推荐

使用Postgres获取带有表架构的外键

SearchView 在 Android Studio 中显示 Data.entity.Cantact.@85c7ce6

如何在 N1QL 查询(Couchbase 查询)中使用 LENGTH() 字符串函数

如何让 Google Drive Electron 表格像 MySQL 数据库一样工作吗?

有使用 H2 数据库的实际经验吗?

如何在我的 Rails 应用程序中避免竞争条件?

如何更改 Heroku 中的列类型?

mysql搜索表名的段

便携式(PHPPass)密码哈希.我应该使用它们吗?

skip bad record in redshift data load

Membase 和 Couchbase 有什么区别?

如何在 Play 2.0 中 for each 环境设置不同的数据库?

在插入数据库之前而不是在输出时转义 HTML 是不是一个坏主意?

连接字符串中超时

如何在 Postgres 9.6+ 中生成长度为 N 的随机、唯一的字母数字 ID?

表模块与域模型

如何处理数据库中用户的身份验证/授权?

为什么负 id 或零被认为是不好的做法?

如何更正此 sql 连接上的相关名称?

计算邮政编码...和用户之间的距离.