2009-07-08 129 views
0

我想重用mysql連接。因此,我有一個返回連接的databasemanager.php類中的全局變量。MySQL連接重用問題

這個問題在某個特定的頁面上執行以前的查詢也是如此。

看起來好像在連接對象中有一些剩餘的查詢會在相同的連接被重用時被執行。可能嗎 ?如何解決這個..

function getDBConnection(){ 
    global $conn; 
    if (!empty($conn)){ 
// echo $conn ; 
    return $conn; 
    } 
    $conn = mysql_connect($GLOBALS['HOSTNAME'],$GLOBALS['DBUSER'],$GLOBALS['DBPASS']); 

    if (!$conn) { 
    die('Could not connect: ' . mysql_error()); 
    } 

    mysql_select_db($GLOBALS['DBNAME'],$conn); 
    return $conn; 

}

該如何代碼lookslike

+1

我們需要看你如何連接(什麼函數和什麼參數)。 另外,你是否通過請求或相同的請求重用連接? – 2009-07-08 18:25:22

回答

1

你有沒有看着mysql_pconnect

根據文檔:

mysql_pconnect()行爲很像0​​mysql_connect()函數有兩個主要 差異。

首先,連接時,該功能將 首先嚐試找到一個(永久) 鏈接已存在使用同一 主機,用戶名和密碼打開。如果找到一個是 ,則返回的標識符將爲 ,而不是打開新的 連接。

其次,當腳本的執行結束時,不會關閉與SQL 服務器的連接。相反, 鏈接將保持未來 使用(mysql_close()將不會關閉 鏈接由 建立mysql_pconnect())。