mysqldump blocking Ruby on Rails



这是一个比听起来更棘手的问题。我在许多服务器上运行Ruby/MySQL,使用mysqldump没有任何问题。然而,我使用的是Ubuntu设置,它的表现似乎与Fedora和RHEL完全不同。当我使用mysqldump备份生产服务器时,它会导致Rails无法访问。Apache仍然能够提供映像,并且CPU/内存使用率很低,因此看起来纯粹是与RoR和MySQL的争用。我正在使用InnoDB,它允许mysqldump在Fedora服务器上备份这个完全相同的数据库,而不需要任何停机时间。然而,另一个服务器运行的是Ruby 1.8.7和Rails 2.3。

以下是完整的服务器规格:

Ubuntu 10
Rails 3
RVM
Ruby 1.9.2
Passenger
Apache
MySQL

额外的"线索":

  • 我可以连接到生产数据库和访问记录使用mysql客户端

  • 我可以使用Rails控制台加载生产环境和使用ActiveRecord查询表

  • 我不能通过Apache/Passenger访问生产web服务器,当我使用Webrick运行生产实例时(通过'rails s -e production')也不能访问它

关于为什么mysqldump会阻塞Rails(并且只有Rails)的任何想法?

所以这个东西有一个答案(来自上面的评论):

请使用mysqldump与params -single-transaction - Neo Apr 22 at14:59

相关内容

  • 没有找到相关文章

最新更新