0

私の問題は、顧客が注文する Web サイトを持っていることです。その情報は、orders、ordersProducts、...etc テーブルに入ります。スタッフが注文を処理する別のサーバーにレポート データベースがあります。このサーバーのテーブルには、注文情報と追加の列が必要になるため、追加情報を追加して現在の情報を更新できます

あるサーバー (注文 Web サイト) から別のサーバー (レポート Web サイト) に、データ損失のリスクなしで効率的に情報を取得する最良の方法は何ですか? また、レポート データベースを Web サイトに接続して情報を取得したくありません。データをプッシュするためのソリューションを注文 Web サイトに実装したいと考えています。

考え

  1. mySQL レプリケーション-問題- レプリケートされたテーブルは厳密にレポート用であり、操作用ではありません。例 顧客の住所が変更された場合はどうなりますか? 注文に製品を追加する必要がありますか? これにより、レプリケートされたテーブルが台無しになります。

  2. 二重挿入- ローカル テーブルに挿入してから、レポート データベースに挿入します。 問題- 何らかの理由でレポート データベースがダウンした場合、mySQL 接続がデータをプッシュできないため、データを失う可能性があります。ある種のクエリ ログを実装しますか?


両方のサーバーで mySQL と PHP を使用

4

1 に答える 1

0

Mysql レプリケーションは、あなたが探しているものとまったく同じように聞こえますが、あなたがそこに欠点として挙げたものを理解しているかどうかはわかりません。

私にとっての解決策は、スレーブがレポートデータベースである読み取り専用スレーブへのマスターのように思えます。あなたの懸念がマスターへの変更であり、スレーブを同期させない場合、これはそれほど大きな問題ではなく、すべての変更が同期されます。接続が失われた場合、スレーブはマスターから何秒遅れているかを追跡し、2 つの同期が戻るまで変更を実行します。

于 2012-06-28T14:18:46.250 に答える