我的問題:Mysql的同步關係數據庫
我怎麼能同步2個MySQL數據庫(離線本地數據庫與主聯機數據庫)?
問題是數據庫的關係,和ID始終是汽車incremenate,所以如果我只是使用同步插入它會惹我referals。
這對於診所管理程序,我提出,問題是目前其 服務器上,但有時互聯網連接出現了我的用戶/慢 診所,所以我需要讓他在離線模式下工作(存儲每一件事 到本地數據庫),並在一天結束時手動與遠程數據庫 同步(雙向)。 所以基本上每個診所應該有自己的本地數據庫,並讓他們全部同步到中央數據庫
表的示例。
db.Cental.users
|id|user|clinic |
|01|demo|day care|
|02|nurs|er |
|03|demX|day care|
db.day care.users
|id|user|clinic |
|01|demo|day care|
|02|demX|day care|
(註釋ID犯規一定中央和本地分貝之間匹配,但在兩個分貝的結構相同)
例如:
數據庫信息:
每個用戶都有很多訪問,插件。
每次訪問包含1USER如patient_id,和1USER作爲doctor_id
每個插件具有一個用戶,許多輸入
plugin_inputs具有一個插件
我有2個數據庫1服務器和其他本地託管的 - 用於離線模式 -
我想要的是能夠同步本地數據庫與在線一,但因爲我有超過1個用戶,多個本地數據庫,所以每個人將有幾乎相同的ID,而在線數據庫應該包含所有他們合併。
那麼我該如何同步它們呢?
我用戶的PHP/MySQL(在線)/ SQLite的(本地)
這不是PHP的問題,它是一個MySQL問題。保留2個表格/數據庫然後再合併它們並且更麻煩是一個壞主意。也許您應該使用單個數據庫,然後更改您的應用程序設置以使用該數據庫服務器。 – Husman 2013-02-11 13:10:13
@Husman php:incase我需要使用一些代碼來同步它們..原因爲什麼我必須用戶2數據庫是本地數據庫在離線模式下工作,並且用戶在互聯網回來時同步它。作爲備份,所以他可以從任何地方訪問它。 – Zalaboza 2013-02-11 13:14:48
您需要迭代本地機器上的所有記錄,然後爲每個記錄(我建議將其導出爲CSV或XML/json文件),您需要檢查它是否存在於聯機數據庫中,並且然後將其作爲新記錄插入。當在線數據庫使用不多時(即深夜),這是最好的。將其導出爲xml/json/csv文件的原因是允許進行批處理,並且使用結構化數據格式編碼變得更簡單。希望有所幫助。 – Husman 2013-02-11 13:19:21