2008-09-17 18 views
9

¿Cómo me conecto a una instancia de base de datos remota de Oracle desde PHP?Conectando a Oracle usando PHP

Necesito consultar (leer solo) la base de datos remota de Oracle para obtener cierta información; ¿Necesito tener instalado Oracle Instant Client?

¿Es suficiente la extensión OCI para PHP?

Respuesta

7

De PHP Manual

  • Necesitará las bibliotecas de cliente de Oracle para utilizar esta extensión.

  • La manera más conveniente para instalar todos los archivos necesarios es el uso de Oracle Instant Client, que está disponible en Oracle's site

1

vi esto en la sección "Notas" de la PHP documentation:

Si estás usando PHP con Oracle Instant Client, puede utilizar fácil conectar método de nomenclatura (...)

Por lo tanto, creo que es bastante claro que puede conectarse a un Oracle DB sin Oracle Instant Client, utilizando solo la extensión Oracle de PHP.

2

hay un par de pasos que debe seguir para que esto funcione.

Primero, necesita instalar el controlador Oracle para cualquier sistema operativo que tenga. Luego, cree un DSN para que odbc lo use para conectar la función de php a la base de datos de Oracle. En las ventanas, se puede encontrar esto en el Panel de control -> Fuentes ODBC

Una vez hecho esto, reinicie la base de datos, el servidor web y, entonces debería ser capaz de probar todo con esta:

odbc_connect($dsn,$user,$pass);

Si tiene linux, se necesitan los mismos pasos, pero no estoy seguro de cómo se crea un DSN en Unix.

+0

Esto también funcionará, la única diferencia es que me conectaría a través de DSN en lugar de usar la extensión Oracle de PHP. ¡Gracias! –

1

Si usted está tratando de conectarse a Oracle en Ubuntu con PHP, el siguiente enlaces han sido más útiles:

A) http://pecl.php.net/bugs/bug.php?id=9253

Ese es el verdadero caballo de batalla-uno - le da casi todos los datos que necesita.

B) http://fabrizioballiano.net/2008/01/26/how-to-install-php-pdo_oci-on-ubuntu-gutsy/

Esto también es útil para los detalles de las cosas que necesitan ser instalado para Oracle para trabajar con Ubuntu.

Si lo está utilizando con PHP, deberá asegurarse de que las variables de entorno TNS_ADMIN y ORACLE_HOME estén disponibles para el usuario de apache; hay un archivo llamado 'envvars' en el directorio apache2 donde puede configurarlas. (Para mi propia facilidad de uso, tengo los dos puntos en el mismo directorio.)

+0

Parece que el segundo enlace no funciona. :) – Michael

+0

Parece que funciona bien para mí? –

4

El mejor manual para usar PHP con Oracle es Underground PHP Oracle Manual. Periódicamente actualizado.Por ejemplo, la última actualización describe las nuevas características interesantes de OCI (Oracle Call Interface). Lo encontré por accidente y desde entonces nunca me arrepentí. Comience con ese buen manual.

+1

La URL ya no funciona, aquí está la nueva: http://www.oracle.com/technetwork/topics/php/underground-php-oracle-manual-098250.html – mark