我正在嘗試將客戶遷移到新的數據庫結構。我編寫了一個 PHP 腳本,它遍歷每條記錄并確定該客戶在數據庫中是否有重復項。如果出現多次,我會更新鏈接到該客戶的所有其他表,并將其鏈接的 customerID 更新為該客戶的最新版本。我面臨的問題是,通過在瀏覽器中加載 migrate.php 來運行此腳本需要很長時間,以至于在運行它時會出現超時 504,即使我運行以“A”開頭的客戶名稱的查詢。然后更改為“B”并運行腳本,然后更改為“C”并運行腳本等...(無論如何都需要永遠完成)。所以我的問題是:如何在 migrate.php 頁面的 PHP 循環中運行大約 120,000 個 UPDATE 查詢并避免 504 超時(當前設置為 5 分鐘的限制),或者通過打印查詢并通過 PHPMyAdmin 運行它們?我已經打印出來(片段):BEGIN;UPDATE renewal_reminder SET renewalid='49884' WHERE renewalid='43239';UPDATE renewal_note SET renewalid='49884' WHERE renewalid='43239';UPDATE renewal_request SET renewalid='49884' WHERE renewalid='43239';UPDATE renewal_timeline SET renewalid='49884' WHERE renewalid='43239';COMMIT;但這仍然會殺死 PHPMyAdmin 并返回錯誤??梢栽?PHPMyAdmin 中使用這個大的更新列表來運行腳本,也許是分批?
如何在引發超時 504 的 php 循環中更新多行
慕的地6264312
2022-07-22 09:39:04