2012-11-13 41 views
2
class Profile < ActiveRecord::Base 
    has_many :favorites, :dependent => :destroy 
    has_many :friends, :dependent => :destroy 
end 

我需要水木清華這樣的:最佳方式

mysqldump --opt --where="1 limit 1000" -uroot development profiles > profiles.sql 

但這轉儲包含(預期)只有1000型材行,但不關聯的朋友,我的最愛。

我應該使用YAML來做還是應該怎麼做?

+0

轉儲全部三個表,然後刪除ID爲配置文件> 1000 – klochner

+0

我認爲這是壞主意,因爲我有超過1800萬條記錄 – zolter

+0

如何查找鏈接到前1000個用戶的所有收藏夾/朋友的主鍵的腳本,然後您可以爲那些指定這些主鍵的表執行單獨的轉儲 – klochner

回答

5

拍攝第5000條記錄:

mysqldump --opt --where="1 limit 5000" -uroot development profiles > profiles.sql 

然後找到所有與該記錄的朋友有關:

mysqldump --opt --lock-all-tables --where="profile_id IN (SELECT * FROM (SELECT id FROM profiles LIMIT 5000) temp);" -uroot development friends > friends.sql