我在不連接到Internet的不同位置創建3個數據庫。將master-detail MySQL表數據添加到另一個數據庫
DB A是主辦公室數據庫
DB B是分支辦公室1的數據庫
DB C是分公司2數據庫
每天晚上我需要從交易表數據從乙& C來複制轉化爲A.並在第二天早上將A數據複製到B & C中以使股票數據同步。
交易表由2個表組成
1。交易大師
| ID | TRX_NUMBER | DATE | CUSTOMER_ID |
2。交易詳情
| ID | TRANSACTION_MASTER_ID | ITEM_ID |數量| PRICE |總計|
交易details.TRANSACTION_MASTER_ID是外鍵transaction-master.ID
的問題是transaction-master.ID是自動增量值,所以如何數據複製交易主&交易細節成A無間斷交易大師&交易明細外鍵值?
因爲如果在B上我的表有1作爲transaction-master.ID值,那麼當我將B數據插入到A中時,可能1已經在使用並且將變爲2(因爲是自動增量)並且會導致外鍵交易細節.TRANSACTION_MASTER_ID將打破
解決此問題的最佳做法是什麼?
SOLUTION: 我得到從IRC, 使用 「auto_increment_offset」 和 「auto_increment_increment」 MySQL的信道良好的解決方案上的MySQL
集auto_increment_offset答:1,B:2,C:3
上A,B集auto_increment_increment 3,和C
這樣的主鍵決不會在每個分支上相同
嘛,點1是完全正確的,不帶自動增量出現沒有問題,但我已經建立自己的數據庫,並完成代碼.. 我有另一種解決方案更適合我的情況,該解決方案是在MySQL上使用「auto_increment_offset」和「auto_increment_increment」 – frozenmaiden