Rails 应用程序 - 同步“登台”带有“生产”的数据库
我有一个 Rails CMS 应用程序,用于管理生产 Web 服务器的内容(不是 Rails 应用程序)。它们装在两个盒子上。
暂存中的数据库需要将数据(数据库很小,<1MB)复制到生产数据库。这需要手动完成,而不是通过复制。更困难的是,生产服务器只能通过 SSH 访问,不允许访问其他服务(典型的安全环境)。
我尝试编写一些 rake/Capistrano 任务来在登台服务器上执行 mysql 转储并将其导入生产服务器,尽管这会锁定生产数据库,使请求失败。生产服务器在同步期间无法关闭。
我有什么选择?
I have a rails CMS app that manages content for a production web server (not a rails app). They are on two boxes.
The database in staging needs to copy data (database is very small,<1MB) to the production database. This needs to be done manually, not thru replication. To make it more difficult the production server is only accessible thru SSH, access for other services is not allowed (typical secure environment).
I've tried writing some rake/Capistrano tasks to do a mysql dump on the staging server and import it into the production server, although this would lock the production database, making requests fail. The production server cannot be brought down during the syncs.
What are my options?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我发现 gem table_syncer 是我所需要的一切,希望这对某人有帮助别的。
I've found the gem table_syncer to be everything I needed, hope this helps someone else.