真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

釋放數(shù)據(jù)庫內(nèi)存php,內(nèi)存存放數(shù)據(jù)

如何解決PHP查詢大量數(shù)據(jù)內(nèi)存耗盡的問題

這個問題在PHP的官方網(wǎng)站上叫緩沖查詢和非緩沖查詢(Buffered and Unbuffered queries)。PHP的查詢?nèi)笔∧J绞蔷彌_模式。也就是說,查詢數(shù)據(jù)結(jié)果會一次全部提取到內(nèi)存里供PHP程序處理。這樣給了PHP程序額外的功能,比如說,計算行數(shù),將指針指向某一行等。更重要的是程序可以對數(shù)據(jù)集反復(fù)進行二次查詢和過濾等操作。但這種緩沖查詢模式的缺陷就是消耗內(nèi)存,也就是用空間換速度。

在原陽等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計 網(wǎng)站設(shè)計制作定制網(wǎng)站建設(shè),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,成都營銷網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè),原陽網(wǎng)站建設(shè)費用合理。

相對的,另外一種PHP查詢模式是非緩沖查詢,數(shù)據(jù)庫服務(wù)器會一條一條的返回數(shù)據(jù),而不是一次全部返回,這樣的結(jié)果就是PHP程序消耗較少的內(nèi)存,但卻增加了數(shù)據(jù)庫服務(wù)器的壓力,因為數(shù)據(jù)庫會一直等待PHP來取數(shù)據(jù),一直到數(shù)據(jù)全部取完。

很顯然,緩沖查詢模式適用于小數(shù)據(jù)量查詢,而非緩沖查詢適應(yīng)于大數(shù)據(jù)量查詢。

php 在類中如何釋放內(nèi)存。

你的方法沒有錯,可是你說讀取90W條數(shù)據(jù),你讀取的時候它就已經(jīng)是占用著內(nèi)存了,你應(yīng)該循環(huán)小批量讀取,每次循環(huán)結(jié)束都銷毀本次循環(huán)的變量。但同時提醒你兩點:

1、unset()函數(shù)只能在變量值占用內(nèi)存空間超過256字節(jié)時才會釋放內(nèi)存空間。

2、只有當(dāng)指向該變量的所有變量(如引用變量)都被銷毀后,才會釋放內(nèi)存。

如何解決PHP里大量數(shù)據(jù)循環(huán)時內(nèi)存耗盡的問題

?php

mysql_connect("localhost", "mysql_user", "mysql_password") or

die("Could not connect: " . mysql_error());//連接你的數(shù)據(jù)庫

mysql_select_db("mydb");//選擇你的數(shù)據(jù)庫

$result = mysql_query("SELECT `name` FROM data_boy WHERE `id`='2' LIMIT 0, 60");//執(zhí)行SQL查詢語句,搜索出60條數(shù)據(jù)

while ($row = mysql_fetch_array($result)) {

echo "姓名:".$row[name]."br";

/*補充一句,此處也可以是:

echo "姓名:".$row[0]."br";此處"mysql_fetch_array"默認(rèn)返回的既有 關(guān)聯(lián)數(shù)組(字段作為鍵名),也有數(shù)字索引數(shù)組*/

}

mysql_free_result($result);//釋放結(jié)果


本文標(biāo)題:釋放數(shù)據(jù)庫內(nèi)存php,內(nèi)存存放數(shù)據(jù)
分享鏈接:http://weahome.cn/article/dssocij.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部