2015-04-27 115 views
0

我有一個MySql數據庫,我正在保存多個公司記錄,並在大多數表中保留一個company_id,以便根據公司區分記錄。如果我有10家公司的ID爲10,我想爲一家公司設置一個MySql的新實例,並將所有數據的mysqldump「where company_id = 3」,但同時保留其他表中的引用檢查數據。 我想知道如何在這種情況下采取這樣的轉儲。 我能找到的所有的表,其中的company_id存在使用此查詢基於特定列值的Mysql轉儲

「SELECT TABLE_NAME,COLUMN_NAME information_schema.columns在列名LIKE‘COMPANY_ID’」

我只想轉儲公司3個數據和參考其中company_id = 3的表存在於其他表中並將其還原到新實例。 我的應用程序使用Ruby on Rails和Mysql。

回答

0

您應該使用sharding。也許爲每個國家制作新的shardYammer對此有非常好的文章。你也可以看看這個引擎場的post。爲此目的,data_fabric是一個很好的寶石。

+0

我已經採取了完整的數據庫的轉儲,但現在我只想company_id = 3的細節,並放棄其他公司的數據。我的問題是如何運行查詢,我可以提及company_id = 3 – tttt

+0

,你有這個company_id跨多個表,對吧? – usmanali

+0

是的,在很多表中,但我想保留這些表上的檢查,以及誰有表包含company_id – tttt