sql >> Database >  >> RDS >> Oracle

Maak verbinding vanuit PHP met een Oracle DB met behulp van een Oracle Wallet

Ja, het is mogelijk, u moet:
1 - een portemonnee maken (zoals uitgelegd in uw link)
2 - de Oracle instant-client en de portemonnee-bestanden ergens op de server plaatsen met Apache+PHP (bijvoorbeeld /opt/instantclient en /opt/wallet)
3 - start Apache met de volgende variabelen:

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

4 - Maak in /opt/wallet een tnsnames.ora-bestand met deze inhoud:

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

waarbij WALLET_NAME de naam is van de portemonnee die is gekozen toen de portemonnee is gemaakt, DB_IP het ip-adres of de hostnaam van de database is, DB_PORT de db-poort en DB_SID de sid van de database
5 - In /opt/wallet maak een sqlnet.ora-bestand met deze inhoud:

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

SQLNET.WALLET_OVERRIDE = TRUE  

6 - herstart Apache

Aan de kant van de PHP-code kunt u nu verbinding maken met de database en een verbinding openen met de volgende code:

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

je kunt anders de oci_pconnect gebruiken, voor blijvende verbindingen, en dezelfde syntaxis
Ik hoop dat dit helpt en ik ben niets vergeten




  1. SQL-groepering op tijdsinterval

  2. Java:Blob lezen vanuit Oracle

  3. Select-instructie om ouder en oneindige kinderen te retourneren

  4. hoe een dynamisch menu met submenu te maken met php &mysql