需要的,如果你不執(zhí)行斷開的話,內(nèi)存會一直保持這次連接,直到被數(shù)據(jù)庫單方面斷開為止

創(chuàng)新互聯(lián)公司是專業(yè)的東興網(wǎng)站建設(shè)公司,東興接單;提供做網(wǎng)站、網(wǎng)站設(shè)計,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行東興網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
一直連接屬于長連接,網(wǎng)站加入并發(fā)請求數(shù)會很多,如果是一個長連接的話,你的網(wǎng)站加入并發(fā)請求數(shù)很多,也就是說同時有很多人來訪問你的網(wǎng)站,并且每個訪問者都需要查詢一次mysql數(shù)據(jù)庫的話,會很快把你的系統(tǒng)資源消耗完了。
每次連接都屬于短鏈接,短鏈接就沒有這個問題,每次查詢完就馬上關(guān)閉了,這樣不容易消耗過多的系統(tǒng)資源。但是長連接也有個好處就是,頻繁查詢的時候,可以節(jié)省了多次建立TCP連接的時間
寫反了,先斷開連接,然后在退出
// 釋放結(jié)果集
mysql_free_result($result);
// 關(guān)閉連接
mysql_close($link);
if?(!$_conn?=?@mysql_connect('localhost','root','123456'))?{
exit('數(shù)據(jù)庫連接失敗');
}
去掉@符號,讓錯誤打印出來。問題通常不外乎是找不到該用戶。說不定不存在'root'@'localhost',而是'root'@'127.0.0.1',mysql就是這么煩,是用host和user當(dāng)聯(lián)合主鍵來確定一個用戶的,同樣是root,不同的host也是不同的。密碼什么的我就不說了,估計你都檢查過很多遍了。?看圖。
①如果用的是函數(shù),比如連接MySQL,$conn=mysql_connect($db_host,$db_username,$db_password)為連接MySQL數(shù)據(jù)庫的資源,關(guān)閉此連接用mysql_close($conn)。
②如果用的是PDO,如pdo=new PDO()為PDO連接,關(guān)閉連接將其設(shè)為null即可,即pdo=null。
希望能幫上你。
這是由于數(shù)據(jù)庫連接數(shù)過多導(dǎo)致的,說明之前建立的連接你沒有釋放。
看到你的需求是實時獲取數(shù)據(jù)庫里面的內(nèi)容,可以考慮使用內(nèi)存數(shù)據(jù)庫,這樣返回的效率高,也會避免過多連接的錯誤。
可以使用redis和memcache來解決這個問題。代碼如下,記得首先要安裝redis,并且要安裝php-redis擴展。
?php
$redis = new Redis();
$redis-connect('127.0.0.1', 6379);//serverip port
$redis-auth('mypassword');//my redis password
$redis -set( "test" , "Hello World");
echo $redis -get( "test");
當(dāng)前名稱:php數(shù)據(jù)庫斷開連接 mysql斷開所有連接
當(dāng)前網(wǎng)址:http://chinadenli.net/article4/hejioe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、云服務(wù)器、網(wǎng)頁設(shè)計公司、搜索引擎優(yōu)化、Google、建站公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)