我們有一個持續的問題,其中php 5.2.6將退出連接到Oracle 10.2.0.4.0。我們可以幾周沒有任何問題,然後(通常是星期六上午),php將不能再連接。數據庫已啓動並運行,我們可以使用varous DB工具手動連接它,但在重新啓動Web服務器之前,php將無法再次連接。 Web服務器正在運行IIS 6.0。php退出連接到Oracle
我們使用$ connection = oci_connect($ userID,$ password,$ TNS)進行連接,其中$ TNS是本地tnsnames.ora文件中的適當TNS。我們通過我們的數據中心的連接管理員,但我不知道有關如何工作的細節。
這一直困擾着我們的原因之一是,我們不確定是誰造成了這個問題,各種日誌並沒有說明這一點。這是一個PHP問題,因爲它會出現,或者是數據庫本身出於某種原因拒絕連接,或者它可能是連接管理器?有些意見認爲這將有很大幫助。週末我們的負載較輕,所以應該是問題。我們一直無法找到任何可能引發問題的外部流程。
當你的Web服務器和數據庫服務器之間的連接失敗,有你: *轉向PHP錯誤報告嗎?當您調用oci_connect時,錯誤消息是什麼? *從Web服務器ping數據庫服務器? *將PHP環境變量(尤其是與OCI8相關的變量)與連接失敗之前的變量進行了比較? – Blair 2010-01-20 05:34:21
查看PHP錯誤日誌後,此中斷與以前的中斷完全不同。我不確定,但我認爲在以前的中斷,沒有任何寫入錯誤日誌文件。在這種特殊情況下,它有一堆的「ORA-12154:TNS:無法解析指定的連接標識符......」這使我懷疑,在這種情況下,問題不是PHP,但DATABSE消息。 – user39653 2010-01-21 14:15:08