我现在有一个大型的生产数据库(7GB +),我测试我的开发分支所需的大部分数据都需要是最新的。
我想创建一个本地数据库,这样我就可以实现一个CI服务器,并将开发数据库与生产数据库分开,但是如果使用这个大小的数据库,我如何确保它始终保持同步?
我考虑过复制,但是如果连接到我的本地服务器或者我已经更改了数据库结构,这将如何影响复制呢?
谢谢,
加文
答案 0 :(得分:4)
考虑到您可以在开发生产之前很久就对开发数据库进行更改,那么您打算如何使开发数据库与生产同步?
是的,这是问题的一部分,我 不知道它是否有可能做到 鉴于架构可能会改变 很多..
要进行任何不会消除或导致开发更改问题的自动同步将非常困难。
因此,我建议您仅在需要时手动还原生产备份。设置工作来完成工作,并根据需要运行它(不要按计划进行)。尽可能使用当前数据进行开发。当您需要刷新时,请确保已将所有开发更改实施/保存到文件,然后将备份还原到开发。如果您已将“发布”生产,则在此之后恢复。你需要确定最有效的方法。但是,请确保在恢复时不会丢失任何开发更改!
如果您需要具有支持和调试生产问题的最新本地版本,请设置“支持”数据库并使用复制。不要在那里开展工作,拥有专门的开发数据库。
答案 1 :(得分:0)
考虑将整个数据库以sql语句(模式和实际数据)的形式转储到文本文件中,然后将它们放在一个跟踪更改的版本控制系统下。