我有两个 Rails 应用程序。一是内部版本,二是外部客户端版本。
在客户端版本中,我有数据库的剪切版本。因此,现在我需要复制我的主 MySQL 数据库,但不是所有数据:仅复制某些列和某些表。
我该如何实现这项工作?
如果有一些 ruby 东西(以这种方式处理复制的 gem),那就太好了。
最佳答案
复制通常是在数据库层执行的操作,这里是 Mysql 复制的文档: http://dev.mysql.com/doc/refman/5.0/en/replication.html 这通常会复制整个数据库。
另一个解决方案是有一个作业(可能用 ruby 编写),每天运行几次并复制所需的数据。
也许您希望以尽可能小的延迟将数据从主机推送到从机?然后,您可以在 ActiveRecord 中的 save() 方法上进行 Hook ,将更改推送到从属数据库。
还没看过,但也许是这样的:http://www.rubyrep.org/
关于Mysql复制某些列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4579007/