2011-08-25 148 views

回答

2

是的,它是可能的,你需要:
1 - 創建一個錢包(如您的鏈接解釋)
2 - 把Oracle即時客戶端和錢包的地方文件與Apache + PHP的服務器上(例如/選擇/ instantclient和/ opt /錢包)
3 - 啓動Apache下列變量:

ORACLE_HOME=/opt/instantclient 
LD_LIBRARY_PATH=/opt/instantclient 
TNS_ADMIN=/opt/wallet 

4 - 在/ opt /錢包創造與此內容的tnsnames.ora文件:

WALLET_NAME = 
    (DESCRIPTION = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = DB_IP)(PORT = DB_PORT))  
    (CONNECT_DATA = (SID = DB_SID))  
) 

其中WALLET_NAME是創建錢包時選擇的錢包名稱,DB_IP是數據庫IP地址或主機名,DB_PORT是db端口,DB_SID是數據庫的sid
5 - 在/ opt /錢包創建的sqlnet.ora文件與此內容:

WALLET_LOCATION =  
    (SOURCE =  
    (METHOD = FILE)  
    (METHOD_DATA =  
     (DIRECTORY = /opt/wallet)  
    )  
    )  

SQLNET.WALLET_OVERRIDE = TRUE 

6 - 重新啓動Apache

在PHP代碼方面,現在你可以連接到數據庫,打開與下面的代碼的連接:

$conn = oci_connect("/", "", "WALLET_NAME", null, OCI_CRED_EXT); 

否則你可以使用oci_pconnect進行持久連接,並使用相同的語法
我希望這有幫助,我沒有忘記任何東西