私の質問 :
2 つの mysql データベース (オフライン ローカル データベースとマスター オンライン データベース) を同期するにはどうすればよいですか?
問題は、データベースがリレーショナルであり、id が常に自動インクリメントであることです。そのため、insert を使用して同期するだけでは、参照が台無しになります。
これは私が作成したクリニック管理アプリの場合、問題は現在サーバー上にありますが、ユーザーのクリニックでインターネット接続がダウン/低速になることがあるため、彼をオフラインモードで作業させ (すべてのものをローカルデータベースに保存する)、手動で同期する必要があります (双方向) 一日の終わりにリモートデータベースで。したがって、基本的に各クリニックには独自のローカルデータベースがあり、それらすべてが中央データベースに同期する必要があります
テーブルの例。
デシベル中央ユーザー
|id|user|clinic |
|01|demo|day care|
|02|nurs|er |
|03|demX|day care|
デシベル。デイケア。ユーザー
|id|user|clinic |
|01|demo|day care|
|02|demX|day care|
(ID は中央データベースとローカル データベースの間で必ずしも一致しないことに注意してください。ただし、両方のデータベースの構造は同じです)
例:
データベース情報:
各ユーザーは多くの訪問、プラグインを持っています。
各訪問には、患者 ID として 1 人のユーザー、医師 ID として 1 人のユーザーが含まれます
各プラグインには 1 人のユーザーと多くの入力があります
plugin_inputs には 1 つのプラグインがあります
サーバー上に1つ、ローカルにホストされている2つのデータベースがあります-オフラインモード用-
私が望むのは、ローカル db をオンライン db と同期できるようにすることですが、複数のユーザー、複数のローカル db があるため、それぞれがほぼ同じ ID を持ち、オンライン db にはそれらすべてを組み合わせて含める必要があります。
どうすればそれらを一緒に同期できますか?
私はphp/mysql(オンライン)/ sqlite(ローカル)を使用しています