2013-11-24 177 views
1

我有兩個來自不同mysql服務器的相同數據庫的轉儲。我需要通過調整主鍵和外鍵自動將這兩個轉儲組合成單個數據庫。

例如,考慮兩個sql轉儲說mysqldump1和mysqldump2包含兩個表country_table和child_table。這裏遵循兩個轉儲的數據

轉儲:將兩個數據庫合併到一個數據庫中

 
+----+-------------------+ 
| id | Country  | 
+----+-------------------| 
| 1 | India   | 
| 2 | China   | 
| 3 | USA    | 
| 4 | England   | 
| 5 | Iran    | 
+----+-------------------+ 

表2 country_table:mysqldump1.dmp
表1 person_table

 
+----+-------------------+-------------+ 
| id | Name   | Country (fk)| 
+----+-------------------|-------------| 
| 1 | Tom    |  1  | 
| 2 | Anish   |  2  | 
| 3 | James   |  2  | 
| 4 | Akhil   |  5  | 
| 5 | Jobi    |  4  | 
+----+-------------------+-------------+ 

轉儲:mysqldump2.dmp
表1:country_table

 
+----+-------------------+ 
| id | Country  | 
+----+-------------------| 
| 1 | Dubai   | 
| 2 | Australia  | 
+----+-------------------+ 

表2:person_table

 
+----+-------------------+-------------+ 
| id | Name   | Country (fk)| 
+----+-------------------|-------------| 
| 1 | Binu    |  1  | 
| 2 | Justin   |  2  | 
| 3 | Mark    |  2  | 
+----+-------------------+-------------+ 

結果數據庫包含包含兩個垃圾場,它看起來像下面的條目組合。請注意,它包含上述兩個數據庫的組合結果的數據庫,調整主鍵和外鍵
結果數據庫
country_table

 
+----+-------------------+ 
| id | Country  | 
+----+-------------------| 
| 1 | India   | 
| 2 | China   | 
| 3 | USA    | 
| 4 | England   | 
| 5 | Iran    | 
| 6 | Dubai   | 
| 7 | Australia  | 
+----+-------------------+ 

person_table

 
+----+-------------------+-------------+ 
| id | Name   | Country (fk)| 
+----+-------------------|-------------| 
| 1 | Tom    |  1  | 
| 2 | Anish   |  2  | 
| 3 | James   |  2  | 
| 4 | Akhil   |  5  | 
| 5 | Jobi    |  4  | 
| 6 | Binu    |  6  | 
| 7 | Justin   |  7  | 
| 8 | Mark    |  7  | 
+----+-------------------+-------------+ 

你能否建議我將兩個數據庫合併成一個dat的想法看起來像上面的基礎。 (我正在使用mysql數據庫)

+0

數據庫或表? – FaddishWorm

+0

我需要合併兩個數據庫。但數據庫只包含兩個表 –

回答

-1

將每個表導出爲CSV,然後將它們導入合併的數據庫。一旦將所有表都放在同一個數據庫中,您就可以編寫SQL來追加數據。

有關連接部分的更多詳細信息,請參見MYSQL - Concatenate two tables

訣竅是先讓它們在同一個數據庫中。

+1

它是否也在調整外鍵? –

+0

你還沒有提供足夠的信息來幫助我。如果你正在添加記錄,那麼是的,它應該保持外鍵約束,除非數據庫有重複的初選 – FaddishWorm

相關問題