nes转php,PHP4 ORACLE8i NES3.6 for Solaris2.6编译和远程连接指南(转)
PHP4 & ORACLE8i & NES3.6 for Solaris2.6編譯和遠程連接指南[@more@]在oracle server 上安裝oracle8i
安裝oracle8i時要選擇us7ascii字符集才能支持中文,我嘗試過gb2312,weiso88
89pi等字符集,結果php從oracle取得的漢字都是問號,也嘗試過gbk編碼,結果
問題更古怪,ocilogon報告ORA-03106錯誤,令人摸不著頭腦。
然后在web server 上安裝oracle 8i的client端,可以用netec來配置客戶端,也
可以直接從oracle server端把tnsnames.ora用ftp傳過來,運行tnsping 來測試
是否連同oracle server,最好是用sqlplus來登陸一下,格式是:scott@oracle_
service_name/tiger。
從php老家下載最新的php4.0.1pl2版。
在web server上安裝好gcc和gmake編譯環境。
編譯php4的參數如下:
./configure --enable-experimental-zts --with-mysql=no
--with-nsapi=/usr/netscape/suitespot/
--with-oracle=/data/oracle/app/8.1.5
--with-oci8=/data/oracle/app/8.1.5
--enable-libgcc --enable-sigchild
其中的/usr/netscape/suitespot/是web server上的nes的安裝路徑,/data/ora
cle/app/8.1.5是web server上的$ORACLE_HOME環境變量。--enable-libgcc是為
了避免采用libgcc++帶來的reference symbol not found的錯誤,--eanble-sig
child是為了避免oracle產生的僵尸進程。
如果在安裝oracle8 client時候,沒有按照install guide上所說的在安裝完成后
設置oracle的一些目錄的屬性,可以把nobody用戶加到dba組里,保證nobody用戶
對tnsnames.ora文件有存取權限,否則PHP程序將會出現ORA-12154錯誤。也曾經
把web server設定為以oracle用戶運行,結果是無法啟動。
確保ORACLE SERVER 正在運行,listener已經啟動,然后就可以用PHP程序測試一
下遠程連接ORACLE SERVER了。函數ocilogon的第三個參數是oracle_service_na
me,不能省略。用ora函數的格式是ora_logon("scott@oracle_service_name","t
iger"),至于這是為什么,我也不知道。
以上一點東西,花了我3周的時間,寫出來,供參考。
來自 “ ITPUB博客 ” ,鏈接:http://blog.itpub.net/10796304/viewspace-952529/,如需轉載,請注明出處,否則將追究法律責任。
總結
以上是生活随笔為你收集整理的nes转php,PHP4 ORACLE8i NES3.6 for Solaris2.6编译和远程连接指南(转)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 立仪光谱共焦位移传感器选型技巧
- 下一篇: 高德地图城市编码