読み取り専用権限を持つリモート データベースのデータを使用する Web アプリケーションを開発しています。このデータベース SATMANAGE のデータは、5 分ごとに更新されます。私のアプリケーションでは、IDIRECT_STATUS と呼ばれるリモート データベース テーブルの 1 つにいくつかの列が必要です。
気圧 CLI からクエリを実行し、データを .txt ファイルに保存する cron ジョブがあります。次に、ローカル テーブルを切り捨て、LOAD DATA LOCAL INFILE を使用して更新されたデータを再読み込みします。
これは今までうまくいきました。アプリケーションがますます複雑になっているため、ローカルの「リモート」テーブルを変更する方法が必要です。ここで、ローカルの「リモート」テーブルを切り捨てます。リモートの「IDIRECT_STATUS」テーブルから更新されたデータでテーブルを更新するだけで済みます。これにより、リモートの「IDIRECT_STATUS」テーブルには存在しない列を、ローカルの「remotes」テーブルに含めることができます。
これは私が探しているものです。左側はリモートテーブルです。対応する列で、左側のリモートデータベースで更新された右側のローカルデータベースを維持したいと考えています。これは、追加のローカル列がその状態を維持するように、ローカル テーブルを切り捨てません。
IDIRECT_STATUS remotes
-------------------------------|-------------------------------
id | id
netmodem_name | netmodem_name
nms_name | nms_name
ip_addr | ip_addr
serial_no | serial_no
last_date_online | last_date_online
last_updated | last_updated
network_name | network_name
network_id | network_id
is_mobile | is_mobile
latitude | latitude
longitude | longitude
lnb_name | lnb_name
buc_name | buc_name
upstream_qos_profile_name | upstream_qos_profile_name
downstream_qos_profile_name | downstream_qos_profile_name
inroute_maximum_data_rate | inroute_maximum_data_rate
outroute_maximum_data_rate | outroute_maximum_data_rate
upstream_cir | upstream_cir
use_upstream_cir | use_upstream_cir
crtp_enabled | crtp_enabled
INROUTE_GROUP_ID | INROUTE_GROUP_ID
| excluded (Not updated or deleted)
| excluded_to (Not updated or deleted)
| shipowner_id (Not updated or deleted)
| etc... (Not updated or deleted ...)
うまくいけば、素晴らしい人たちが私を助けることができます. 不明な点がありましたらお知らせください。質問をできるだけ早く編集します。