第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何在引發(fā)超時(shí) 504 的 php 循環(huán)中更新多行

如何在引發(fā)超時(shí) 504 的 php 循環(huán)中更新多行

PHP
慕的地6264312 2022-07-22 09:39:04
我正在嘗試將客戶遷移到新的數(shù)據(jù)庫(kù)結(jié)構(gòu)。我編寫了一個(gè) PHP 腳本,它遍歷每條記錄并確定該客戶在數(shù)據(jù)庫(kù)中是否有重復(fù)項(xiàng)。如果出現(xiàn)多次,我會(huì)更新鏈接到該客戶的所有其他表,并將其鏈接的 customerID 更新為該客戶的最新版本。我面臨的問題是,通過在瀏覽器中加載 migrate.php 來運(yùn)行此腳本需要很長(zhǎng)時(shí)間,以至于在運(yùn)行它時(shí)會(huì)出現(xiàn)超時(shí) 504,即使我運(yùn)行以“A”開頭的客戶名稱的查詢。然后更改為“B”并運(yùn)行腳本,然后更改為“C”并運(yùn)行腳本等...(無論如何都需要永遠(yuǎn)完成)。所以我的問題是:如何在 migrate.php 頁(yè)面的 PHP 循環(huán)中運(yùn)行大約 120,000 個(gè) UPDATE 查詢并避免 504 超時(shí)(當(dāng)前設(shè)置為 5 分鐘的限制),或者通過打印查詢并通過 PHPMyAdmin 運(yùn)行它們?我已經(jīng)打印出來(片段):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;但這仍然會(huì)殺死 PHPMyAdmin 并返回錯(cuò)誤??梢栽?PHPMyAdmin 中使用這個(gè)大的更新列表來運(yùn)行腳本,也許是分批?
查看完整描述

1 回答

?
隔江千里

TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超10個(gè)贊

更新

出色地...

我最終在引用它的每個(gè)表中為 customerID 建立了索引,并使用 UPDATE 查詢運(yùn)行了我的原始腳本,它在大約 5 秒內(nèi)完成了......

無需插入,然后復(fù)制數(shù)據(jù)。

因此,對(duì)于遇到相同問題的任何人,請(qǐng)嘗試索引表中的某些列,以便您的腳本可以快速引用它們。


查看完整回答
反對(duì) 回復(fù) 2022-07-22
  • 1 回答
  • 0 關(guān)注
  • 88 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)