我在MySQL與結構的表批量記錄:無法檢索使用PHP和MySQL
id int(10) PRIMARY,
app_no varchar(255)
和現場BTREE
型INDEX appno_index
app_no
現在這個表中有900000個+記錄。我使用CodeIgniter模型來列出記錄。 我對記錄在笨上市查詢
$query = $this->db->query("SELECT id, app_no FROM `app_no` USE INDEX(appno_index)");
但MySQL的拋出錯誤這樣的。
致命錯誤:用盡134217728個字節允許存儲器大小(試圖分配24個字節)在C:\瓦帕\ WWW \〜\ SYSTEM \數據庫\驅動\的MySQL \ mysql_result.php上線162
如何使用任何東西來優化我的查詢,以便頁面顯示所有記錄?
它看起來像你的PHP進程一次只能使用128 MB的內存。您的900,000條記錄太大而不適合內存(假定平均記錄大小約爲128字節)。還行吧;沒有人會看到所有900,000條記錄,所以你真的不希望你的頁面顯示所有900,000條記錄或PHP將所有900,000條記錄存入內存。如果你認爲你確實需要它們,那麼你正在設計你的應用程序......不是最佳的;該數據庫應該是您查詢處理的地方,而不是應用程序。 –
是的,我不想在單個頁面上顯示900000條記錄。如果每頁顯示50條記錄,那麼它很酷。 –