我想在從一個MYSQL資料庫抓取部分資料後更新到另一個伺服器的MYSQL資料庫中, 要怎麼寫比較好? 是使用批次檔 還是 PHP 還是 MYSQL能直接做到?
抓取部分資料的語法如下:(A伺服器)
SELECT m.EAN13,m.u_name,m.sex,m.phone,m.email,m.address,m.activedate
FROM member AS m WHERE
DATE_FORMAT(activedate, "%Y%m%d") BETWEEN "20240101" AND "20240110"
ORDER BY m.EAN13 ASC
更新到另一台資料庫的語法如下:(B伺服器)
UPDATE VIPMF SET VIP_NAME='u_name',SEX='sex',TEL1='phone',EMAIL='email',
ADDRESS='address',CREATE_DAY='activedate',MNT_FLAG='2'
WHERE VIP_CODE = 'EAN13' ; "
以前做法都是抓取 A伺服器 資料後到 EXCEL 加工成更新語法,再到 B伺服器 做更新,
但有再想如果 MYSQL語法 可以使用解決,那每日工作排程使用批次檔去執行也能解決。
另外的想法是使用 PHP 抓取 A伺服器的資料,在迴圈中更新B伺服器的資料
FEDERATED Tables + trigger ?
可以使用Kettle(Pentaho Data Integration)实现,简单得很。