为了便于秋季清理,我将在mysql数据库(不同的硬件)之间移动25个表。这不是整个数据库,几百个表中只有25个…这些桌子不是真的应该放在里面的,我不会因为保密协议的原因去问为什么。
现在,这将破坏许多代码和sql查询。
做这个最好的方法是什么?
立刻把它们移过来。
把他们一个一个地移过去
--
把它们一次搬过来,有点不错。可能是我错过了一些中断和损坏的代码,但是将它们作为一个块移动要快得多,在推送代码时花费的时间更少。
一个接一个地移动它们是一种很好的方法,减少了大部件损坏的机会,但是更多的时间将花费在微观管理工作、冗余工作和部署上。
我可以在两个数据库之间镜像表一段时间吗?也许是联合表?
--
杂项信息:共有25个表按内容相互关联。
我不能一次关闭数小时的数据库,大约5分钟的停机时间是可以接受的。
--
移动所有这些数据并使代码、SQL和我保持良好状态的最佳方法是什么?
我可以将表联合起来作为将表复制到新数据库的一种方法吗?
-丹尼尔
最佳答案
看来一次把它们移到一个上面是可行的。这样你就有一堆简单的小问题而不是一个大难题。我希望你有你的系统在许多自动化测试,以确保所有这些洗牌不会打破任何东西。
另一件事:你说要关闭数据库。如果您是在开发环境中进行更改,并且只在确定一切正常时才使更改生效,那么为什么您需要在生产中停机?我希望你不要想在生产上做这些改变而不先在开发上做。