我有一個MySQL DB和一個innoDB表。我有一個PHP頁面連接,鎖定表格,做一些更新,然後解鎖表格。 PHP頁面正在通過wamp通過apache提供。MySQL表鎖定後php崩潰
php頁面上傳文件到數據庫。我決定通過上傳一個比分配給PHP的內存大的文件來模擬系統崩潰。這肯定導致了這個錯誤:允許內存大小18874368字節耗盡(試圖分配6176754字節)。之後,更新期間鎖定的表仍然被鎖定。
在此錯誤發生後,當我嘗試訪問表時出現錯誤:表'a'未鎖定LOCK TABLES。我知道這是一個鎖問題,因爲我會提出一個SQL提示符,並嘗試從被鎖定的表中進行選擇,並且只是等待,就像鎖定表時一樣。如果我終止了Apache進程,那麼我試圖在SQL提示符下運行的語句將最終通過。我的猜測是,當我殺死Apache進程時,MySQL意識到應該釋放表鎖,因爲連接被切斷。
任何想法??
您不能管理錯誤處理的致命錯誤! – RobertPitt 2011-03-02 13:11:26
我的錯誤 - 我正在考慮關閉功能。答覆表示讚賞。 – qbert220 2011-03-02 13:43:47