2011-04-22 42 views
3

這聽起來比較棘手。我在很多服務器上運行Ruby/MySQL並使用mysqldump沒有任何問題。但是,我使用的是Ubuntu安裝程序,它看起來與Fedora和RHEL的行爲完全不同。當我使用mysqldump備份生產服務器時,它導致Rails無法訪問。 Apache仍然能夠提供圖像,並且CPU /內存使用率很低,所以它似乎純粹是與RoR和MySQL的競爭。我使用InnoDB,它允許mysqldump在沒有任何停機時間的情況下在Fedora服務器上備份完全相同的數據庫。但是,另一臺服務器運行的是Ruby 1.8.7和Rails 2.3。mysqldump阻塞Ruby on Rails

這裏有完整的服務器規格:

Ubuntu 10 
Rails 3 
RVM 
Ruby 1.9.2 
Passenger 
Apache 
MySQL 

附加 「線索」:

  • 我可以用mysql客戶端

  • 我正常連接到生產數據庫和訪問記錄可以使用Rails控制檯加載生產環境和查詢表使用ActiveRecord

  • 我無法通過Apache /客運訪問生產網絡服務器,我也可以訪問它,當我運行的WEBrick生產實例(通過「軌道小號-e生產」)

任何想法,爲什麼mysqldump的會阻止Rails(只有Rails)?

+0

請使用mysqldump與params --single-transaction – Neo 2011-04-22 14:59:02

+0

這似乎解決了問題 - 謝謝! – jman 2011-04-26 14:03:24

回答

1

所以這個事情有一個答案(由上述評論):

請使用mysqldump使用參數--single-交易 - 新04月22日在 14:59