我有一個CGI Perl腳本,它將從Oracle數據庫運行select語句來獲取記錄。這個腳本在Apache上與cgi-bin鏈接運行。它運行良好。從CGI Perl腳本查詢Oracle數據庫時出錯
由於故障轉移,我們將硬盤移至具有類似設置的備份服務器。當我們然而運行腳本,顯示了以下錯誤:
install_driver(Oracle) failed: Can't load '/u02/system/perl/usr/local/lib64/perl5/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: libclntsh.so.11.1: cannot open shared object file: No such file or directory at /u02/system/perl/usr/lib64/perl5/DynaLoader.pm line 200.
我已經檢查了我的ORACLE_HOME
和LD_LIBRARY_PATH
變量,它們都指向正確的Oracle客戶端。同時嘗試locate libclntsh.so.11.1
並設法在授予權限的情況下在正確的目錄中找到該文件。
同時加入了一個oracle.conf
文件在/etc/ld.so.conf.d
所有這些,仍然它顯示了同樣的錯誤路徑爲oracle lib目錄。我的想法已經枯竭......
任何指針或建議表示讚賞。謝謝。
謝謝。看起來問題是將'oracle.conf'添加到ldd路徑後,我需要執行'ldconfig'命令來刷新它。運行'ldd'的提示提供了洞察力,謝謝。 – ipohfly